約 5,800,099 件
https://w.atwiki.jp/minho/pages/57.html
Chelsea 選手名 所属クラブ 国籍 年齢 Pos GVR 特殊能力 フェイス スパイク 備考 Petr Cech Chelsea チェコ ー GK ー Shot Stopper 固有 ー ー Carlo Cudicini Chelsea イタリア ー GK ー ー ー ー ー Henrique Hilario Chelsea ポルトガル ー GK ー ー ー ー ー Paulo Ferreira Chelsea ポルトガル ー ー ー ー 固有 ー ー John Terry Chelsea イングランド ー CB ー Stopper 固有 ー ー Ricardo Carvalho Chelsea ポルトガル ー ー ー ー 固有 ー ー William Gallas Chelsea フランス ー ー ー ー 固有 ー 移籍toArsenal Wayne Bridge Chelsea イングランド ー ー ー ー 固有 ー ー Claude Makelele Chelsea ー ー ー ー ー ー ー ー Michael Essien Chelsea ガーナ ー ー ー Defensive Midfielder 固有 白 ー Frank Lampard Chelsea イングランド ー ー ー Box to Box 固有 ー ー Joe Cole Chelsea イングランド ー ー ー Attacking Winger 固有 ー ー Michael Ballack Chelsea ドイツ ー ー ー ー 固有 ー ー Shaun Wright-Phillips Chelsea イングランド ー ー ー ー 固有 固有 ー Geremi Njitap Chelsea ー ー ー ー ー ー ー ー John Obi Mikel Chelsea ー ー ー ー ー ー ー ー Andriy Shevchenko Chelsea ウクライナ ー ー ー Target Man 固有 ー ー Didier Drogba Chelsea コートジボアール ー ー ー ー 固有 ー ー Arjen Robben Chelsea ー ー ー ー ー ー ー ー Salomon Kalou Chelsea ー ー ー ー ー ー ー ー ー Chelsea ー ー ー ー ー ー ー ー 移籍情報 Ashley Cole(from Arsenal)
https://w.atwiki.jp/vocaloidenglishlyric/pages/1163.html
【Tags Ebot Kaito tS S】 Original Music title 信號燈-SIGNAL- English music title Signal Light -SIGNAL- Romaji music title Shingoutou -SIGNAL- Music Lyrics written, Voice edited by Ebot Music arranged by Ebot Singer(s) Kaito This is the last song of "Rasen series". Click here for the original Japanese Lyrics English Lyrics (translated by animeyay): As I stand still in the dusk on a street contorting into a spiral, my chest rustles noisily, ah, to the bell chimes echoing in the silence. I was preached to, made to fly off, and forced to burden the laws of nature. Looking back at my lashed past, I caress the scars on my body. I begin to dash through a labyrinth without even a pause for breath. Even when I recline on a rattan chair, the tranquility is merely an illusion. As the light of a slowly singed candle diffuses, I suddenly come to the realization that I am a hermit, who hold too many useless truths of this world. My voice does not reach, I cannot backtrack the path I ve walked, nor can I keep up with my parching tears. As a signal light rotates among my compromises, I find its blurry flashes unbearable. It s easy to say that one has been a disappointment, but it s too somber to say that one s fate is ephemeral. Back in the days I pursued too much, but my reward remained unchanged. I hurled indescribably elegant lies, ah, as well as oblique smiles. I ask relentlessly for the meaning in things, but struggle at the answers, that I become filled with trepidation at the coldness of my gushing sweats. Although I brandish that old splint for my grinning knee, I end up choked up in tears at my empty dream in an ash-filled era. Drowning in the conceit I have gathered and clung onto, I suddenly come to the realization that I am a loner, who, while tripped up, am crawling towards old age. I cannot choose my journey, I cannot tell about it through songs, nor can I keep up with the going-and-returning dawns. As the warning light dims in the mirrors, it can t even display the glow I want to see anymore. I gaze up at the condensing moon, become flushed away by snow thaw, become fearful of death, and avert my eyes from the heat haze. As I keep chasing up the doubts I have, my life has been slowly fading. When I have deceived to the point of lamenting, I lie down on the retribution of my chanted paradoxes. My voice does not reach, I cannot backtrack the path I ve walked, nor can I keep up with my parching tears. I cannot choose my journey, I cannot tell about it through songs, nor can I keep up with the going-and-returning dawns. As a signal light rotates among my compromises, I find its blurry flashes unbearable. As the warning light dims in the mirrors, it can t even display the glow I want to see anymore. The small grains of sand slipping through my fingers are indiscernible, but I have spent my whole life trampling over them while walking on, covered in concealed thorns. Romaji lyrics (transliterated by animeyay): rasen ni yugamu machi no tasogare tatazumu shijima ni hibiku kane no ne ni aa sanzameku mune satosare habatakasare setsuri o owasare muchiutsu waga mi kaerimite kasabuta o tsumaguru iki tsugu koto mo naku hashiridasu meikyuu touisu ni motaredo yasuragi wa maboroshi kogasareyuku dake no rou no akari nijimu ki ga tsukeba yosutebito iranu shinjitsu hodo kono te ni amaru todokanai koe modorenai michi kareru namida ni oitsukenai dakyou no naka de mawaru shigunaru kasumu hikari ni taerarenai fugainashi to iu ni wa amari ni tayasuku hakanaki sadame to iu ni wa amari ni mo wabishii motomesugite ta hibi to kawaranu houshuu e mo iwarenu uso o nagete aa naozari no emi imi bakari o toikake kotae ni agakeba fukidasu ase no tsumetasa ni ozoke o furuwaseru warau hiza ni ateta soegi furikazasedo hai no mau jidai ni musebinaku sorayume muragarisokonete wa sugaru jifu ni obore ki ga tsukeba wasurebito ashi o torareta mama yofuke e nijiru erabenai tabi katarenai uta meguru yoake ni oitsukenai kagami no naka de yaseru shigunaru nozomu iro sae miserarenai kogoru tsuki o miage yukidoke ni nagasare sange ni obiete wa me o somuku kagerou sagashidasu giwaku to aozameta unmei nageku hodo azamukeba tonaeta gyakusetsu no mukui ni fuseru todokanai koe modorenai michi kareru namida ni oitsukenai erabenai tabi katarenai uta meguru yoake ni oitsukenai dakyou no naka de mawaru shigunaru kasumu hikari ni taerarenai kagami no naka de yaseru shigunaru nozomu iro sae miserarenai surinukete yuku suna no tsubu nado mienai hisometa toge o furuwasete fumishidaku meisuu []
https://w.atwiki.jp/elvis/pages/4339.html
Cal 99 Photomosaics Smithmark Pub? SmithmarkPub? undefined undefined The Atoms' Family (Let's Wonder About Science) Rourke Pub Group? J. M. Patten? RourkePubGroup? J.M.Patten? Substores-UnknownASINs-35 Subjects-Children sBooks-Ages4-8-General? Cal 95 Boys of Summer Cedco Pub? CedcoPub? undefined undefined Cal 99 Photomosaics Calendar Golden Turtle (Cal)? GoldenTurtle(Cal)? undefined undefined Cal 95 Spacescapes Cedco Pub? CedcoPub? undefined undefined Understanding Health Insurance A Guide to Professional Billing Delmar Pub? Jo Ann C. Rowell? Michelle A. Green? DelmarPub? JoAnnC.Rowell? MichelleA.Green? Substores-UnknownASINs-35 Subjects-Medicine-Administration&Policy-PracticeManagement&Reimbursement? Subjects-Medicine-Education&Training-General? Subjects-Professional&Technical-Medical-Administration&MedicineEconomics-PracticeManagement&Reimbursement? Subjects-Science-Education-MedicalEducation? Subjects-Science-Medicine-Administration&Policy-PracticeManagement&Reimbursement? International Quantum Electronics Conference Optical Society of Amer? OpticalSocietyofAmer? Substores-UnknownASINs-35 Subjects-Engineering-Electrical&Electronics-Electronics-General? Subjects-Professional&Technical-Engineering-Electrical&Electronics-Electronics-General? Subjects-Science-General Bible Quotations Made Humorous With Miltonian 'Quips Cranks' and Wanton Wiles Abbe Pub Assn of Washington Dc? Vito C. Vanderbilt? AbbePubAssnofWashingtonDc? VitoC.Vanderbilt? Substores-UnknownASINs-35 Subjects-Religion&Spirituality-Bible&OtherSacredTexts-Bible-StudyGuides,History&Reference-General? Subjects-Religion&Spirituality-Christianity-Bibles-General? Cal 98 Elvis Calendar Cedco Pub? CedcoPub? undefined undefined Air Pollution Law Lexis Law Pub? Arnold W., Jr. Reitze? LexisLawPub? ArnoldW.,Jr.Reitze? Substores-UnknownASINs-35 Subjects-Law? Subjects-Nonfiction-Law? An Interview with J.K.Rowling (An Interview With) Egmont Books Ltd? J.K. Rowling? EgmontBooksLtd? J.K.Rowling? Substores-UnknownASINs-35 Subjects-Teens-Biographies&Memoirs-General? Research on Technological Innovation, Management and Policy (Research on Technological Innovation, Management and Policy) Jai Pr Robert A. Burgelman? Richard S. Rosenbloom? JaiPr RobertA.Burgelman? RichardS.Rosenbloom? Substores-UnknownASINs-35 Subjects-Business&Investing-Biographies&Primers-OrganizationalChange? Subjects-Business&Investing-Management&Leadership-Management? Subjects-Professional&Technical-BusinessManagement-Management&Leadership-Management? Subjects-Professional&Technical-BusinessManagement-Management&Leadership-OrganizationalChange? Subjects-Science-General Subjects-Science-Technology-General&Reference Subjects-Science-Technology-Innovations? Tobacco Index of Modern Information With Bibliography Abbe Pub Assn of Washington Dc? Scott Thomas Dowling? AbbePubAssnofWashingtonDc? ScottThomasDowling? Substores-UnknownASINs-35 Subjects-Health,Mind&Body-Recovery-Smoking? Subjects-Health,Mind&Body-General? Subjects-Reference-Publishing&Books-Bibliographies&Indexes-General? Subjects-Reference-General? Tobacco and Effects Medical Subject Analysis With Bibliography Abbe Pub Assn of Washington Dc? Scott Thomas Dowling? AbbePubAssnofWashingtonDc? ScottThomasDowling? Substores-UnknownASINs-35 Subjects-Health,Mind&Body-Recovery-Smoking? Great American Ghost Stories Rutledge Hill Pr? Frank D. McSherry? Charles G. Waugh? Martin Harry Greenberg? RutledgeHillPr? FrankD.McSherry? CharlesG.Waugh? MartinHarryGreenberg? Substores-UnknownASINs-35 Subjects-Literature&Fiction? Life's Little Treasury (H. Jackson Brown's Life's Little Treasure Series) Rutledge Hill Press,U.S.? H.Jackson Brown? RutledgeHillPress,U.S.? H.JacksonBrown? Substores-UnknownASINs-35 Subjects-Entertainment-Humor? Subjects-Health,Mind&Body-Self-Help-General? Subjects-Parenting&Families-FamilyHealth? London Theatre Walks Applause Theatre Book Publishers? Jim de Young? ApplauseTheatreBookPublishers? JimdeYoung? Substores-UnknownASINs-35 Subjects-Outdoors&Nature-OutdoorRecreation-Hiking&Camping-Walking? Subjects-Sports-Hiking&Camping-Walking? Subjects-Travel-Reference&Tips? Health Hazards in Occupations Index to Modern Information Abbe Pub Assn of Washington Dc? Mary B. Schneply? AbbePubAssnofWashingtonDc? MaryB.Schneply? Substores-UnknownASINs-35 Subjects-Medicine-General? Subjects-Science-Medicine-General? Famous Quotations Sprinkled With Humor Wit to Make Bold the Young Old Abbe Pub Assn of Washington Dc? Vito C. Vanderbilt? AbbePubAssnofWashingtonDc? VitoC.Vanderbilt? undefined undefined Applications of Fuzzy Sets and the Theory of Evidence to Accounting (Studies in Managerial and Financial Accounting, Vol 3) Jai Pr Philip H. Siegel? Andre De Korvin? Khursheed Omer? JaiPr PhilipH.Siegel? AndreDeKorvin? KhursheedOmer? Substores-UnknownASINs-35 Subjects-Business&Investing-General? Subjects-Business&Investing-Industries&Professions-Accounting-General? Subjects-Professional&Technical-Accounting&Finance-Industries&Professions-Accounting-General? Subjects-Professional&Technical-Accounting&Finance-Accounting-General? Subjects-Science-General Hatupatu and the Birdwoman Wright Group/ Mcgraw-Hill? Cowley? WrightGroup/Mcgraw-Hill? Cowley? undefined undefined Waiting for Godot (Samuel Beckett the Video Series) Applause Theatre & Cinema Books? Zero Mostel? Burgess Meredith? Alan Schneider? Samuel Beckett? ApplauseTheatre&CinemaBooks? ZeroMostel? BurgessMeredith? AlanSchneider? SamuelBeckett? Substores-UnknownASINs-35 Subjects-Arts&Photography-PerformingArts-Theater-General? Subjects-Entertainment-PerformingArts-Theater-General? Advances in Asymmetric Induction (Advances in Asymmetric Induction) Jai Pr Alfred Hassner? Glenn J. McGarvey? JaiPr AlfredHassner? GlennJ.McGarvey? Substores-UnknownASINs-35 Subjects-Engineering-Electrical&Electronics-ElectricityPrinciples? Subjects-Professional&Technical-Engineering-Electrical&Electronics-ElectricityPrinciples? Subjects-Science-Chemistry-Organic-General? Subjects-Science-General Dana Point, Ca (Optical Data Storage) Optical Society of Amer? OpticalSocietyofAmer? Substores-UnknownASINs-35 Subjects-Engineering? Subjects-Professional&Technical-Engineering? Subjects-Science-General Subjects-Science-Physics-Applied? Advances in Chemical Applications of Lasers (Advances in Carbohydrate Analysis) Jai Pr Edwin F. Hilinski? JaiPr EdwinF.Hilinski? Substores-UnknownASINs-35 Subjects-Engineering-Electrical&Electronics-Optics-Lasers? Subjects-Professional&Technical-Engineering-Electrical&Electronics-Optics-Lasers? Subjects-Science-General Cal 98 Enchanted Paradise Calendar Cedco Pub? James Coleman? CedcoPub? JamesColeman? undefined undefined Wanted! Dumb or Alive 100 New Stories from the Files of America's Dumbest Criminals Rutledge Hill Pr? Daniel R. Butler? Alan Ray? RutledgeHillPr? DanielR.Butler? AlanRay? Substores-UnknownASINs-35 Subjects-Nonfiction-SocialSciences-Sociology-General? Cal 98 Flower Fairies Calendar Cedco Pub? Cicely Mary Barker? CedcoPub? CicelyMaryBarker? Substores-UnknownASINs-35 Subjects-Arts&Photography-Art-General? Religion and Pastoral Care Information Index With Bibliography Abbe Pub Assn of Washington Dc? Louis D. Sankaran? AbbePubAssnofWashingtonDc? LouisD.Sankaran? Substores-UnknownASINs-35 Subjects-Religion&Spirituality? Civil War Inns A Guide to the Battlefields and Country Inns Rutledge Hill Pr? Chuck Lawliss? RutledgeHillPr? ChuckLawliss? Substores-UnknownASINs-35 Subjects-Travel-Reference&Tips-Food&Lodging-Hotels&Inns? The I Dream of Jeannie Cookbook Recipes You Can "Master" in the Blink of an Eye Rutledge Hill Pr? Barbara Eden? Kasey Rogers? Mark Wood? RutledgeHillPr? BarbaraEden? KaseyRogers? MarkWood? Substores-UnknownASINs-35 Subjects-Cooking,Food&Wine-General? Subjects-Cooking,Food&Wine-Quick&Easy-General? Women and Spouse Abuse Index of Modern Information With Bibliography Abbe Pub Assn of Washington Dc? Willard T. Brainard? AbbePubAssnofWashingtonDc? WillardT.Brainard? undefined undefined Diffractive Optics (Technical Digest Ser.; Vol. II) Optical Society of Amer? OpticalSocietyofAmer? Substores-UnknownASINs-35 Subjects-Engineering-General? Subjects-Professional&Technical-Engineering-General Subjects-Science-General Rochester, Ny (Gradient-Index Optical Imaging Systems) Optical Society of Amer? OpticalSocietyofAmer? Substores-UnknownASINs-35 Subjects-Engineering-General? Subjects-Engineering-Industrial,Manufacturing&OperationalSystems-Manufacturing? Subjects-Professional&Technical-Engineering-Industrial,Manufacturing&OperationalSystems-Manufacturing? Subjects-Professional&Technical-Engineering-General Subjects-Science-General Subjects-Science-Physics-General? Women and Spouse Abuse Index of Modern Information With Bibliography Abbe Pub Assn of Washington Dc? Willard T. Brainard? AbbePubAssnofWashingtonDc? WillardT.Brainard? undefined undefined Civil Rights Index of Modern Information Abbe Pub Assn of Washington Dc? Daskin Rice Durron? AbbePubAssnofWashingtonDc? DaskinRiceDurron? Substores-UnknownASINs-35 Subjects-Reference-Publishing&Books-Bibliographies&Indexes-General? Firearms and Gunshot Wounds Index of Modern Information Abbe Pub Assn of Washington Dc? John C. Bartone? AbbePubAssnofWashingtonDc? JohnC.Bartone? undefined undefined Optical Fabrication and Testing Workshop (Optical Fabrication and Testing) Optical Society of Amer? OpticalSocietyofAmer? Substores-UnknownASINs-35 Subjects-Engineering-General? Subjects-Professional&Technical-Engineering-General Subjects-Science-General Sex and Bisexuality Index of Modern Information Abbe Pub Assn of Washington Dc? Rosalie Fine Zoltano? AbbePubAssnofWashingtonDc? RosalieFineZoltano? Substores-UnknownASINs-35 Subjects-Reference-Publishing&Books-Bibliographies&Indexes-General? Portrait Mini Photo Album (Wallace Gromit Series) Rutledge Hill Pr? RutledgeHillPr? Substores-UnknownASINs-35 Subjects-Entertainment-Humor-General? Formats-Accessories-PhotoAlbums-General? Wallace Gromit Gift Box Blank Book, Address Book Rutledge Hill Pr? Gromit Wallace? RutledgeHillPr? GromitWallace? Substores-UnknownASINs-35 Formats-Accessories-Journals-BlankBooks? Formats-Accessories-AddressBooks? Cal 98 Tiny Angels Cedco Pub? Anne Geddes? CedcoPub? AnneGeddes? Substores-UnknownASINs-35 Subjects-Arts&Photography-Photography-General? Subjects-Arts&Photography-Artists,A-Z-General? How to Be a Gentleman A Contemporary Guide to Common Courtesy Rutledge Hill Pr? John Bridges? RutledgeHillPr? JohnBridges? Substores-UnknownASINs-35 Subjects-Health,Mind&Body-Self-Help-General? Mathematical Modeling of Convective Heat and Mass Transfer on the Basis of Nabier Stokes Equations (SCPP) Crc Pr I Llc? V. S. Avduevsky? CrcPrILlc? V.S.Avduevsky? Substores-UnknownASINs-35 Subjects-Science-General Subjects-Science-Mathematics? Optical Amplifiers and Their Applications Summaries of Papers Presented at the Optical Amplifiers and Their Applications Topical Meeting, August 3-5, 1994, Breckenridge, Colorado (Breckenridge, Colorado) Optical Society of Amer? Optical Amplifiers and Their Applications Topical Meeting? OpticalSocietyofAmer? OpticalAmplifiersandTheirApplicationsTopicalMeeting? Substores-UnknownASINs-35 Subjects-Engineering? Subjects-Professional&Technical-Engineering? Subjects-Science-General Serious Mischief Backstage at the Second City the World's Greatest Comedy Theater Sourcebooks Media Fusion? Sheldon Patinkin? SourcebooksMediaFusion? SheldonPatinkin? Substores-UnknownASINs-35 Subjects-Arts&Photography-PerformingArts-Theater-History&Criticism? Subjects-Entertainment-Humor-Comedy? Subjects-Entertainment-Humor-General? Subjects-Entertainment-PerformingArts-Theater-History&Criticism? Spectral Hole-Burning and Related Spectroscopies (Nineteen Ninety-Four Technical Digest Series Vol 15) Optical Society of Amer? OpticalSocietyofAmer? Substores-UnknownASINs-35 Subjects-Science-General Subjects-Science-Physics-General? Advances in Silicone Chemistry (Advances in Silicon Chemistry) Jai Pr Gerald L. Larson? JaiPr GeraldL.Larson? Substores-UnknownASINs-35 Subjects-Science-Chemistry-Organic-General? Subjects-Science-Chemistry-Physical&Theoretical-PhysicalChemistry? Subjects-Science-General The Language of Feelings Learn to Cancel Your Emotional Debt to the Past and Let Your True Feelings Set You Free! Audio Renaissance? David Viscott? AudioRenaissance? DavidViscott? Substores-UnknownASINs-35 Subjects-Health,Mind&Body-Self-Help-General? Psychology and Its Practice Index Modern Information With Bibliography Abbe Pub Assn of Washington Dc? Althea Peltier? AbbePubAssnofWashingtonDc? AltheaPeltier? undefined undefined Substores-UnknownASINs-35 洋書
https://w.atwiki.jp/mynote/pages/78.html
Script started on Fri Jan 1 16 24 09 2010 bash-3.2$ ls [30m[43mfigure[m[m/ latex2html-2002-2-1.tar latex2html-2008.tar [30m[43mtex[m[m/ l2h-2002-2-1+jp2.0.patch [34mlatex2html-2008[m[m/ latex2html.log bash-3.2$ ll total 24824 drwxrwxrwx 10 saitoudaisuke staff 340B 1 1 16 01 [30m[43mtex[m[m/ rw-r--r-- 1 saitoudaisuke staff 43B 1 1 16 24 latex2html.log rw-r--r--@ 1 saitoudaisuke staff 6.0M 1 1 15 58 latex2html-2008.tar drwxr-xr-x@ 48 saitoudaisuke staff 1.6K 1 1 15 59 [34mlatex2html-2008[m[m/ rw-r--r--@ 1 saitoudaisuke staff 6.0M 1 1 16 10 latex2html-2002-2-1.tar rw-r--r-- 1 saitoudaisuke staff 87K 1 1 16 10 l2h-2002-2-1+jp2.0.patch drwxrwxrwx 13 saitoudaisuke staff 442B 12 28 14 02 [30m[43mfigure[m[m/ rw-r--r--@ 1 saitoudaisuke staff 6.0K 1 1 16 00 .DS_Store drwx------+ 24 saitoudaisuke staff 816B 1 1 15 58 [34m..[m[m/ drwxr-xr-x@ 10 saitoudaisuke staff 340B 1 1 16 24 [34m.[m[m/ bash-3.2$ cd latex2html-2008 bash-3.2$ ls BUGS MANIFEST config.log l2hconf.pin readme.hthtml Changes Makefile [31mconfig.status[m[m* l2hconf.pm [34mstyles[m[m/ FAQ Makefile.in [31mconfigure[m[m* [31mlatex2html[m[m* [34mtests[m[m/ INSTALL README [34mcweb2html[m[m/ latex2html.pin [31mtexexpand[m[m* [34mIndicTeX-HTML[m[m/ TODO [34mdocs[m[m/ [31mmakemap[m[m* [31mtexexpand.pin[m[m* [34mL2hos[m[m/ [34mXyMTeX-HTML[m[m/ dot.latex2html-init [34mmakeseg[m[m/ [34mtexinputs[m[m/ L2hos.pm cfgcache.pm [34mexample[m[m/ prefs.pm texlive.pm LICENSE [34mconfig[m[m/ [34mfoilhtml[m[m/ [31mpstoimg[m[m* [34mversions[m[m/ LICENSE.orig config.bat [34micons[m[m/ [31mpstoimg.pin[m[m* [34mwrapper[m[m/ bash-3.2$ make cllean make *** No rule to make target `cllean . Stop. bash-3.2$ make clean cd tests ; ¥ for i in *.tex ; do ¥ dir=`basename $i .tex` ; ¥ rm -rf $dir ; ¥ done ; ¥ rm -f *.aux *.dvi *.log rm -f latex2html texexpand pstoimg l2hconf.pm *.tmp *.bak *.pl rm -fr bin bash-3.2$ ./configure creating cache ./config.cache checking for perl... /opt/local/bin/perl checking whether #! works in shell scripts... yes launching proprietary configuration... config.pl, Release 2008 (Revision 1.49) Accompanies LaTeX2HTML, (C) 1999 GNU Public License. checking for old config file (cfgcache.pm)... loaded checking for platform... darwin (assuming unix) checking for /opt/local/bin/perl... /opt/local/bin/perl checking perl version... 5.008009 checking if perl supports some dbm... yes checking if perl globbing works... yes checking for /opt/local/bin/tex... /opt/local/bin/tex checking for /opt/local/bin/latex... /opt/local/bin/latex checking for initex... no checking for /opt/local/bin/kpsewhich... /opt/local/bin/kpsewhich checking for kpsewhich syntax... ok (style=1) checking for TeX include path... /opt/local/share/texmf/tex/latex/html checking for /opt/local/bin/mktexlsr... /opt/local/bin/mktexlsr checking for /opt/local/bin/dvips... /opt/local/bin/dvips checking dvips version... 5.97 checking if dvips supports the combination of -E and -i -S 1... yes checking for html4-check... no checking for /opt/local/bin/gs... /opt/local/bin/gs checking for ghostscript version... 8.64 checking for ghostscript portable bitmap device... pnmraw checking for full color device for anti-aliasing... ppmraw checking for ghostscript library and font paths... built-in paths are correct checking for /opt/local/bin/pnmcrop -verbose ... no checking for pnmcrop -verbose ... no checking for pnmcrop... /opt/local/bin/pnmcrop Argument "10.26.61" isn t numeric in numeric gt ( ) at ./config/config.pl line 1279. /opt/local/bin/pnmcrop -verbose yes checking for /opt/local/bin/pnmflip... /opt/local/bin/pnmflip checking for /opt/local/bin/ppmquant... /opt/local/bin/ppmquant checking for /opt/local/bin/pnmfile... /opt/local/bin/pnmfile checking for /opt/local/bin/pnmcat... /opt/local/bin/pnmcat checking for /opt/local/bin/pbmmake... /opt/local/bin/pbmmake checking for /opt/local/bin/ppmtogif... /opt/local/bin/ppmtogif yes checking if ppmtogif can make interlaced GIFs... yes checking for /opt/local/bin/pnmtopng... /opt/local/bin/pnmtopng checking for /opt/local/bin/ppmtojpeg... /opt/local/bin/ppmtojpeg checking for /opt/local/bin/pnmcut... /opt/local/bin/pnmcut checking for /opt/local/bin/pnmpad... /opt/local/bin/pnmpad checking for /opt/local/bin/pnmrotate... /opt/local/bin/pnmrotate checking for /opt/local/bin/pnmscale... /opt/local/bin/pnmscale checking for /opt/local/bin/giftopnm... /opt/local/bin/giftopnm checking for /opt/local/bin/jpegtopnm... /opt/local/bin/jpegtopnm checking for /opt/local/bin/pngtopnm... /opt/local/bin/pngtopnm checking for /opt/local/bin/tifftopnm... /opt/local/bin/tifftopnm checking for /opt/local/bin/picttoppm... /opt/local/bin/picttoppm checking for /opt/local/bin/anytopnm... /opt/local/bin/anytopnm checking for /opt/local/bin/bmptoppm... /opt/local/bin/bmptoppm checking for /opt/local/bin/pcxtoppm... /opt/local/bin/pcxtoppm checking for /opt/local/bin/sgitopnm... /opt/local/bin/sgitopnm checking for /opt/local/bin/xbmtopbm... /opt/local/bin/xbmtopbm checking for /opt/local/bin/xwdtopnm... /opt/local/bin/xwdtopnm checking if multiple pipes work... yes checking for temporary disk space... /tmp creating cfgcache.pm Note Will install... ... executables to /usr/local/bin ... shared library items to /usr/local/share/lib/latex2html ... unshared library items to /usr/local/lib/latex2html updating cache ./config.cache creating ./config.status creating Makefile If everything went well, you may run make bash-3.2$ bash-3.2$ bash-3.2$ make /opt/local/bin/perl /Users/saitoudaisuke/Downloads/2010-01-01/latex2html-2008/config/build.pl -x latex2html build.pl (Revision 1.6) Building "latex2html" from "latex2html.pin" touch latex2html /opt/local/bin/perl /Users/saitoudaisuke/Downloads/2010-01-01/latex2html-2008/config/build.pl -x texexpand build.pl (Revision 1.6) Building "texexpand" from "texexpand.pin" touch texexpand /opt/local/bin/perl /Users/saitoudaisuke/Downloads/2010-01-01/latex2html-2008/config/build.pl -x pstoimg build.pl (Revision 1.6) Building "pstoimg" from "pstoimg.pin" touch pstoimg /opt/local/bin/perl /Users/saitoudaisuke/Downloads/2010-01-01/latex2html-2008/config/build.pl l2hconf.pm build.pl (Revision 1.6) Building "l2hconf.pm" from "l2hconf.pin" touch l2hconf.pm bash-3.2$ bash-3.2$ bash-3.2$ make i[K[K[K[K[K[K bash-3.2$ sudo make install Password /opt/local/bin/perl config/install.pl install.pl (Revision 1.12) Info Installed /usr/local/share/lib/latex2html/icons/blueball.gif Info Installed /usr/local/share/lib/latex2html/icons/blueball.png Info Installed /usr/local/share/lib/latex2html/icons/ch_beg_r.gif Info Installed /usr/local/share/lib/latex2html/icons/ch_beg_r.png Info Installed /usr/local/share/lib/latex2html/icons/ch_begin.gif Info Installed /usr/local/share/lib/latex2html/icons/ch_begin.png Info Installed /usr/local/share/lib/latex2html/icons/ch_del_r.gif Info Installed /usr/local/share/lib/latex2html/icons/ch_del_r.png Info Installed /usr/local/share/lib/latex2html/icons/ch_delet.gif Info Installed /usr/local/share/lib/latex2html/icons/ch_delet.png Info Installed /usr/local/share/lib/latex2html/icons/ch_end.gif Info Installed /usr/local/share/lib/latex2html/icons/ch_end.png Info Installed /usr/local/share/lib/latex2html/icons/ch_end_r.gif Info Installed /usr/local/share/lib/latex2html/icons/ch_end_r.png Info Installed /usr/local/share/lib/latex2html/icons/contents.gif Info Installed /usr/local/share/lib/latex2html/icons/contents.png Info Installed /usr/local/share/lib/latex2html/icons/crossref.gif Info Installed /usr/local/share/lib/latex2html/icons/crossref.png Info Installed /usr/local/share/lib/latex2html/icons/footnote.gif Info Installed /usr/local/share/lib/latex2html/icons/footnote.png Info Installed /usr/local/share/lib/latex2html/icons/greenball.gif Info Installed /usr/local/share/lib/latex2html/icons/greenball.png Info Installed /usr/local/share/lib/latex2html/icons/icons.html Info Installed /usr/local/share/lib/latex2html/icons/image.gif Info Installed /usr/local/share/lib/latex2html/icons/image.png Info Installed /usr/local/share/lib/latex2html/icons/index.gif Info Installed /usr/local/share/lib/latex2html/icons/index.png Info Installed /usr/local/share/lib/latex2html/icons/next.gif Info Installed /usr/local/share/lib/latex2html/icons/next.png Info Installed /usr/local/share/lib/latex2html/icons/next_g.gif Info Installed /usr/local/share/lib/latex2html/icons/next_g.png Info Installed /usr/local/share/lib/latex2html/icons/nx_grp.gif Info Installed /usr/local/share/lib/latex2html/icons/nx_grp.png Info Installed /usr/local/share/lib/latex2html/icons/nx_grp_g.gif Info Installed /usr/local/share/lib/latex2html/icons/nx_grp_g.png Info Installed /usr/local/share/lib/latex2html/icons/orangeball.gif Info Installed /usr/local/share/lib/latex2html/icons/orangeball.png Info Installed /usr/local/share/lib/latex2html/icons/pinkball.gif Info Installed /usr/local/share/lib/latex2html/icons/pinkball.png Info Installed /usr/local/share/lib/latex2html/icons/prev.gif Info Installed /usr/local/share/lib/latex2html/icons/prev.png Info Installed /usr/local/share/lib/latex2html/icons/prev_g.gif Info Installed /usr/local/share/lib/latex2html/icons/prev_g.png Info Installed /usr/local/share/lib/latex2html/icons/purpleball.gif Info Installed /usr/local/share/lib/latex2html/icons/purpleball.png Info Installed /usr/local/share/lib/latex2html/icons/pv_grp.gif Info Installed /usr/local/share/lib/latex2html/icons/pv_grp.png Info Installed /usr/local/share/lib/latex2html/icons/pv_grp_g.gif Info Installed /usr/local/share/lib/latex2html/icons/pv_grp_g.png Info Installed /usr/local/share/lib/latex2html/icons/redball.gif Info Installed /usr/local/share/lib/latex2html/icons/redball.png Info Installed /usr/local/share/lib/latex2html/icons/up.gif Info Installed /usr/local/share/lib/latex2html/icons/up.png Info Installed /usr/local/share/lib/latex2html/icons/up_g.gif Info Installed /usr/local/share/lib/latex2html/icons/up_g.png Info Installed /usr/local/share/lib/latex2html/icons/whiteball.gif Info Installed /usr/local/share/lib/latex2html/icons/whiteball.png Info Installed /usr/local/share/lib/latex2html/icons/yellowball.gif Info Installed /usr/local/share/lib/latex2html/icons/yellowball.png Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/bengali.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/bengali.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/devnagri.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/devnagri.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/gujarati.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/gujarati.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/gurmukhi.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/gurmukhi.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/hindi.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/hindi.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/indica.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/indica.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/itrans.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/itrans.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/kannada.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/kannada.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/malyalam.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/malyalam.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/oriya.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/oriya.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/README Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/sanskrit.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/sanskrit.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/sinhlese.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/sinhlese.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/tamil.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/tamil.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/telugu.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/telugu.sty Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/tibetan.perl Info Installed /usr/local/share/lib/latex2html/IndicTeX-HTML/tibetan.sty Info Installed /usr/local/share/lib/latex2html/L2hos/Dos.pm Info Installed /usr/local/share/lib/latex2html/L2hos/Mac.pm Info Installed /usr/local/share/lib/latex2html/L2hos/OS2.pm Info Installed /usr/local/share/lib/latex2html/L2hos/Unix.pm Info Installed /usr/local/share/lib/latex2html/L2hos/Win32.pm Info Installed /usr/local/share/lib/latex2html/L2hos.pm Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/aliphat.perl Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/carom.perl Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/ccycle.perl Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/chemstr.perl Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/chemsym.perl Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/hcycle.perl Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/hetarom.perl Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/hetaromh.perl Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/locant.perl Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/lowcycle.perl Info Installed /usr/local/share/lib/latex2html/XyMTeX-HTML/xymman.perl Info Installed /usr/local/lib/latex2html/cfgcache.pm Info Installed /usr/local/share/lib/latex2html/cweb2html/cweb.cls Info Installed /usr/local/share/lib/latex2html/cweb2html/cweb.perl Info Installed /usr/local/share/lib/latex2html/cweb2html/cweb2html Info Installed /usr/local/share/lib/latex2html/cweb2html/htcweb.perl Info Installed /usr/local/share/lib/latex2html/cweb2html/htcweb.sty Info Installed /usr/local/share/lib/latex2html/cweb2html/htcweb.tex Info Installed /usr/local/share/lib/latex2html/cweb2html/linkex1.w Info Installed /usr/local/share/lib/latex2html/cweb2html/linkex2.w Info Installed /usr/local/share/lib/latex2html/cweb2html/Makefile Info Installed /usr/local/share/lib/latex2html/cweb2html/makemake.pl Info Installed /usr/local/share/lib/latex2html/cweb2html/README Info Installed /usr/local/share/lib/latex2html/cweb2html/wcltx.bib Info Installed /usr/local/share/lib/latex2html/cweb2html/wcltx.w Info Installed /usr/local/share/lib/latex2html/docs/.latex2html-init Info Installed /usr/local/share/lib/latex2html/docs/appendix.tex Info Installed /usr/local/share/lib/latex2html/docs/changebar.sty Info Installed /usr/local/share/lib/latex2html/docs/credits.tex Info Installed /usr/local/share/lib/latex2html/docs/features.tex Info Installed /usr/local/share/lib/latex2html/docs/hypextra.tex Info Installed /usr/local/share/lib/latex2html/docs/justify.sty Info Installed /usr/local/share/lib/latex2html/docs/l2hfiles.dat Info Installed /usr/local/share/lib/latex2html/docs/l2hglo.ist Info Installed /usr/local/share/lib/latex2html/docs/l2hidx.ist Info Installed /usr/local/share/lib/latex2html/docs/l2hman.sty Info Installed /usr/local/share/lib/latex2html/docs/licence.tex Info Installed /usr/local/share/lib/latex2html/docs/Makefile Info Installed /usr/local/share/lib/latex2html/docs/Makefile.frames Info Installed /usr/local/share/lib/latex2html/docs/manhtml.tex Info Installed /usr/local/share/lib/latex2html/docs/manual.bbl Info Installed /usr/local/share/lib/latex2html/docs/manual.cb Info Installed /usr/local/share/lib/latex2html/docs/manual.gls Info Installed /usr/local/share/lib/latex2html/docs/manual.ind Info Installed /usr/local/share/lib/latex2html/docs/manual.index Info Installed /usr/local/share/lib/latex2html/docs/manual.tex Info Installed /usr/local/share/lib/latex2html/docs/overview.tex Info Installed /usr/local/share/lib/latex2html/docs/problems.tex Info Installed /usr/local/share/lib/latex2html/docs/support.tex Info Installed /usr/local/share/lib/latex2html/docs/url.sty Info Installed /usr/local/share/lib/latex2html/docs/userman.tex Info Installed /usr/local/share/lib/latex2html/docs/changebar/00Contents Info Installed /usr/local/share/lib/latex2html/docs/changebar/00readme.txt Info Installed /usr/local/share/lib/latex2html/docs/changebar/catalog.txt Info Installed /usr/local/share/lib/latex2html/docs/changebar/changebar.bug Info Installed /usr/local/share/lib/latex2html/docs/changebar/changebar.dtx Info Installed /usr/local/share/lib/latex2html/docs/changebar/changebar.idx Info Installed /usr/local/share/lib/latex2html/docs/changebar/changebar.ins Info Installed /usr/local/share/lib/latex2html/docs/changebar/chbar.sh Info Installed /usr/local/share/lib/latex2html/docs/changebar/manifest.txt Info Installed /usr/local/share/lib/latex2html/docs/changebar/update.txt Info Installed /usr/local/share/lib/latex2html/docs/hthtml/hthtml.sty Info Installed /usr/local/share/lib/latex2html/docs/hthtml/hthtml.tex Info Installed /usr/local/share/lib/latex2html/docs/hthtml/Makefile Info Installed /usr/local/share/lib/latex2html/docs/hthtml/readme.hthtml Info Installed /usr/local/share/lib/latex2html/docs/psfiles/dn.gif Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eform.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eform2.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eqarrA1.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eqarrA15.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eqarrA2.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eqarrB1.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eqarrB15.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eqarrB2.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eqn1.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eqn15.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/eqn2.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/figure.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/HTMLtab.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/table.ps Info Installed /usr/local/share/lib/latex2html/docs/psfiles/up.gif Info Installed /usr/local/share/lib/latex2html/dot.latex2html-init Info Installed /usr/local/share/lib/latex2html/example/Makefile Info Installed /usr/local/share/lib/latex2html/example/report.tex Info Installed /usr/local/share/lib/latex2html/example/sec1.tex Info Installed /usr/local/share/lib/latex2html/example/sec2.tex Info Installed /usr/local/share/lib/latex2html/foilhtml/foilhtml.dtx Info Installed /usr/local/share/lib/latex2html/foilhtml/foilhtml.ins Info Installed /usr/local/share/lib/latex2html/foilhtml/readme.v12 Info Installed /usr/local/lib/latex2html/l2hconf.pm Info Installed /usr/local/bin/latex2html Info Installed /usr/local/share/lib/latex2html/makemap Info Installed /usr/local/share/lib/latex2html/makeseg/makeseg Info Installed /usr/local/share/lib/latex2html/makeseg/makeseg.tex Info Installed /usr/local/bin/pstoimg Info Installed /usr/local/share/lib/latex2html/readme.hthtml Info Installed /usr/local/share/lib/latex2html/styles/afrikaan.perl Info Installed /usr/local/share/lib/latex2html/styles/alltt.perl Info Installed /usr/local/share/lib/latex2html/styles/american.perl Info Installed /usr/local/share/lib/latex2html/styles/amsart.perl Info Installed /usr/local/share/lib/latex2html/styles/amsbook.perl Info Installed /usr/local/share/lib/latex2html/styles/amsfonts.perl Info Installed /usr/local/share/lib/latex2html/styles/amsmath.perl Info Installed /usr/local/share/lib/latex2html/styles/amssymb.perl Info Installed /usr/local/share/lib/latex2html/styles/amstex.perl Info Installed /usr/local/share/lib/latex2html/styles/article.perl Info Installed /usr/local/share/lib/latex2html/styles/austrian.perl Info Installed /usr/local/share/lib/latex2html/styles/babel.perl Info Installed /usr/local/share/lib/latex2html/styles/babelbst.perl Info Installed /usr/local/share/lib/latex2html/styles/bahasa.perl Info Installed /usr/local/share/lib/latex2html/styles/book.perl Info Installed /usr/local/share/lib/latex2html/styles/brazil.perl Info Installed /usr/local/share/lib/latex2html/styles/breton.perl Info Installed /usr/local/share/lib/latex2html/styles/catalan.perl Info Installed /usr/local/share/lib/latex2html/styles/changebar.perl Info Installed /usr/local/share/lib/latex2html/styles/chemsym.perl Info Installed /usr/local/share/lib/latex2html/styles/CJK.perl Info Installed /usr/local/share/lib/latex2html/styles/color.perl Info Installed /usr/local/share/lib/latex2html/styles/colordvi.perl Info Installed /usr/local/share/lib/latex2html/styles/crayola.txt Info Installed /usr/local/share/lib/latex2html/styles/croatian.perl Info Installed /usr/local/share/lib/latex2html/styles/czech.perl Info Installed /usr/local/share/lib/latex2html/styles/danish.perl Info Installed /usr/local/share/lib/latex2html/styles/dutch.perl Info Installed /usr/local/share/lib/latex2html/styles/english.perl Info Installed /usr/local/share/lib/latex2html/styles/enumerate.perl Info Installed /usr/local/share/lib/latex2html/styles/epsbox.perl Info Installed /usr/local/share/lib/latex2html/styles/epsfig.perl Info Installed /usr/local/share/lib/latex2html/styles/esperant.perl Info Installed /usr/local/share/lib/latex2html/styles/estonian.perl Info Installed /usr/local/share/lib/latex2html/styles/finnish.perl Info Installed /usr/local/share/lib/latex2html/styles/floatfig.perl Info Installed /usr/local/share/lib/latex2html/styles/floatflt.perl Info Installed /usr/local/share/lib/latex2html/styles/frames.perl Info Installed /usr/local/share/lib/latex2html/styles/francais.perl Info Installed /usr/local/share/lib/latex2html/styles/french.perl Info Installed /usr/local/share/lib/latex2html/styles/galician.perl Info Installed /usr/local/share/lib/latex2html/styles/german.perl Info Installed /usr/local/share/lib/latex2html/styles/germanb.perl Info Installed /usr/local/share/lib/latex2html/styles/getimagesize.perl Info Installed /usr/local/share/lib/latex2html/styles/graphics-support.perl Info Installed /usr/local/share/lib/latex2html/styles/graphics.perl Info Installed /usr/local/share/lib/latex2html/styles/graphicx.perl Info Installed /usr/local/share/lib/latex2html/styles/graphixx.perl Info Installed /usr/local/share/lib/latex2html/styles/harvard.perl Info Installed /usr/local/share/lib/latex2html/styles/havard.perl Info Installed /usr/local/share/lib/latex2html/styles/heqn.perl Info Installed /usr/local/share/lib/latex2html/styles/hthtml.perl Info Installed /usr/local/share/lib/latex2html/styles/html.perl Info Installed /usr/local/share/lib/latex2html/styles/htmllist.perl Info Installed /usr/local/share/lib/latex2html/styles/inputenc.perl Info Installed /usr/local/share/lib/latex2html/styles/irish.perl Info Installed /usr/local/share/lib/latex2html/styles/italian.perl Info Installed /usr/local/share/lib/latex2html/styles/justify.perl Info Installed /usr/local/share/lib/latex2html/styles/latexsym.perl Info Installed /usr/local/share/lib/latex2html/styles/letter.perl Info Installed /usr/local/share/lib/latex2html/styles/longtable.perl Info Installed /usr/local/share/lib/latex2html/styles/lsorbian.perl Info Installed /usr/local/share/lib/latex2html/styles/lyx.perl Info Installed /usr/local/share/lib/latex2html/styles/magyar.perl Info Installed /usr/local/share/lib/latex2html/styles/makeidx.perl Info Installed /usr/local/share/lib/latex2html/styles/more_amsmath.perl Info Installed /usr/local/share/lib/latex2html/styles/multicol.perl Info Installed /usr/local/share/lib/latex2html/styles/natbib.perl Info Installed /usr/local/share/lib/latex2html/styles/nharvard.perl Info Installed /usr/local/share/lib/latex2html/styles/norsk.perl Info Installed /usr/local/share/lib/latex2html/styles/nynorsk.perl Info Installed /usr/local/share/lib/latex2html/styles/polish.perl Info Installed /usr/local/share/lib/latex2html/styles/polski.perl Info Installed /usr/local/share/lib/latex2html/styles/portuges.perl Info Installed /usr/local/share/lib/latex2html/styles/psfrag.perl Info Installed /usr/local/share/lib/latex2html/styles/report.perl Info Installed /usr/local/share/lib/latex2html/styles/rgb.txt Info Installed /usr/local/share/lib/latex2html/styles/romanian.perl Info Installed /usr/local/share/lib/latex2html/styles/russian.perl Info Installed /usr/local/share/lib/latex2html/styles/scottish.perl Info Installed /usr/local/share/lib/latex2html/styles/seminar.perl Info Installed /usr/local/share/lib/latex2html/styles/SIunits.perl Info Installed /usr/local/share/lib/latex2html/styles/slides.perl Info Installed /usr/local/share/lib/latex2html/styles/slovak.perl Info Installed /usr/local/share/lib/latex2html/styles/slovene.perl Info Installed /usr/local/share/lib/latex2html/styles/spanish.perl Info Installed /usr/local/share/lib/latex2html/styles/supertabular.perl Info Installed /usr/local/share/lib/latex2html/styles/TEMPLATE.perl Info Installed /usr/local/share/lib/latex2html/styles/texdefs.perl Info Installed /usr/local/share/lib/latex2html/styles/texnames.perl Info Installed /usr/local/share/lib/latex2html/styles/textcomp.perl Info Installed /usr/local/share/lib/latex2html/styles/turkish.perl Info Installed /usr/local/share/lib/latex2html/styles/usorbian.perl Info Installed /usr/local/share/lib/latex2html/styles/verbatim.perl Info Installed /usr/local/share/lib/latex2html/styles/verbatimfiles.perl Info Installed /usr/local/share/lib/latex2html/styles/webtex.perl Info Installed /usr/local/share/lib/latex2html/styles/welsh.perl Info Installed /usr/local/share/lib/latex2html/styles/wrapfig.perl Info Installed /usr/local/share/lib/latex2html/styles/xspace.perl Info Installed /usr/local/share/lib/latex2html/styles/xy.perl Info Installed /usr/local/bin/texexpand Info Installed /usr/local/share/lib/latex2html/texinputs/frames.sty Info Installed /usr/local/share/lib/latex2html/texinputs/heqn.sty Info Installed /usr/local/share/lib/latex2html/texinputs/hthtml.sty Info Installed /usr/local/share/lib/latex2html/texinputs/html.sty Info Installed /usr/local/share/lib/latex2html/texinputs/htmllist.sty Info Installed /usr/local/share/lib/latex2html/texinputs/justify.sty Info Installed /usr/local/share/lib/latex2html/texinputs/latin9.def Info Installed /usr/local/share/lib/latex2html/texinputs/ldump.sty Info Installed /usr/local/share/lib/latex2html/texinputs/techexplHTML.tex Info Installed /usr/local/share/lib/latex2html/texinputs/url.sty Info Installed /usr/local/share/lib/latex2html/texinputs/verbatimfiles.sty Info Installed /usr/local/share/lib/latex2html/versions/cp1252.pl Info Installed /usr/local/share/lib/latex2html/versions/decmulti.pl Info Installed /usr/local/share/lib/latex2html/versions/frame.pl Info Installed /usr/local/share/lib/latex2html/versions/hebrew.pl Info Installed /usr/local/share/lib/latex2html/versions/html2_1.pl Info Installed /usr/local/share/lib/latex2html/versions/html2_2.pl Info Installed /usr/local/share/lib/latex2html/versions/html3_0.pl Info Installed /usr/local/share/lib/latex2html/versions/html3_1.pl Info Installed /usr/local/share/lib/latex2html/versions/html3_2.pl Info Installed /usr/local/share/lib/latex2html/versions/html4_0.pl Info Installed /usr/local/share/lib/latex2html/versions/html4_01.pl Info Installed /usr/local/share/lib/latex2html/versions/html4_1.pl Info Installed /usr/local/share/lib/latex2html/versions/i18n.pl Info Installed /usr/local/share/lib/latex2html/versions/koi8.pl Info Installed /usr/local/share/lib/latex2html/versions/lang.pl Info Installed /usr/local/share/lib/latex2html/versions/latin1.pl Info Installed /usr/local/share/lib/latex2html/versions/latin2.pl Info Installed /usr/local/share/lib/latex2html/versions/latin3.pl Info Installed /usr/local/share/lib/latex2html/versions/latin4.pl Info Installed /usr/local/share/lib/latex2html/versions/latin5.pl Info Installed /usr/local/share/lib/latex2html/versions/latin6.pl Info Installed /usr/local/share/lib/latex2html/versions/latin7.pl Info Installed /usr/local/share/lib/latex2html/versions/latin8.pl Info Installed /usr/local/share/lib/latex2html/versions/latin9.pl Info Installed /usr/local/share/lib/latex2html/versions/macroman.pl Info Installed /usr/local/share/lib/latex2html/versions/math.pl Info Installed /usr/local/share/lib/latex2html/versions/table.pl Info Installed /usr/local/share/lib/latex2html/versions/techexpl.pl Info Installed /usr/local/share/lib/latex2html/versions/unicode.pl Info Installed /usr/local/share/lib/latex2html/versions/utf8.pl Note trying to install LaTeX2HTML style files in TeX directory tree (/opt/local/share/texmf/tex/latex/html) Info Installed /opt/local/share/texmf/tex/latex/html/frames.sty Info Installed /opt/local/share/texmf/tex/latex/html/heqn.sty Info Installed /opt/local/share/texmf/tex/latex/html/hthtml.sty Info Installed /opt/local/share/texmf/tex/latex/html/html.sty Info Installed /opt/local/share/texmf/tex/latex/html/htmllist.sty Info Installed /opt/local/share/texmf/tex/latex/html/justify.sty Info Installed /opt/local/share/texmf/tex/latex/html/latin9.def Info Installed /opt/local/share/texmf/tex/latex/html/ldump.sty Info Installed /opt/local/share/texmf/tex/latex/html/techexplHTML.tex Info Installed /opt/local/share/texmf/tex/latex/html/url.sty Info Installed /opt/local/share/texmf/tex/latex/html/verbatimfiles.sty Info Running /opt/local/bin/mktexlsr to rebuild ls-R database... mktexlsr Updating /opt/local/share/texmf/ls-R... mktexlsr Updating /opt/local/share/texmf-config/ls-R... mktexlsr Updating /opt/local/share/texmf-dist/ls-R... mktexlsr Updating /opt/local/share/texmf-local/ls-R... mktexlsr Updating /opt/local/share/texmf-var/ls-R... mktexlsr Done. Done. Have a lot of fun with LaTeX2HTML! bash-3.2$ exit exit Script done on Fri Jan 1 16 24 57 2010
https://w.atwiki.jp/oper/pages/281.html
第1幕 序曲 アイゼンシュタインの家の中央と脇にドアのある客室 第一場 アルフレードは舞台裏。後でアデーレ Nr. 1 - 導入 (幕が上がると、舞台には誰もいない。舞台の外からアルフレードの歌声が聞こえてくる) <アルフレード> 飛んで行ってしまったた小鳩ちゃん ぼくの想いを静めておくれ ぼくが何度もくちづけした小鳩ちゃん 君をもう一度捕まえさせておくれよ! 小鳩ちゃん 愛しいぼくの小鳩ちゃん おいで おお早くおいでよ あこがれ一杯に ぼくは君のこと想ってる 愛しのロザリンデ! <アデーレ> (笑いながら開いた手紙を手に持って現れる) あああああああ! 何て書いてきたのかしら 妹のイーダは バレエダンサーをやってるあの子 (手紙を読みながら) 「あたしたち きょうはスゴイお屋敷にいるの そこでは何もかもめくるめくステキさよ オルロフスキー公という大金持ちのプレイボーイが 今夜ここで晩餐会を開くの あなたも 着てくドレスを奥様からちょっと拝借して お洒落して来てみない あたし喜んであなたをご招待するわよ 期待してきてちょうだい 保証するわ とってもステキなのよ 退屈なんか絶対しないんだから!」 そう書いてきてるわ 妹のイーダは ああ あたしだって思うわ 絶対 パーティはとっても楽しいんでしょうよ だけど無理なのよ! そこに行けたなら でもどうやって? ああ あたしがあの小鳩のようだったら 飛んでどこへでも行けるのに 喜びと楽しみ一杯に 青空の中を軽やかに ああ どうして神様は あたしを女中にしたのかしら? <アルフレード> (外から歌う) 飛んで行ってしまったた小鳩ちゃん ぼくの想いを静めておくれ... <アデーレ> (語る) いったい何なのよ この訴えは? モノを考えることもできなくなるじゃない? <アルフレード> (続ける) ぼくが何度もくちづけした小鳩ちゃん 、君をもう一度捕まえさせておくれよ! <アデーレ> (コインを一枚紙に包んで) こうして恵んであげないと、いつまでもあの吟遊詩人の歌を聞かされるはめになるわね! (窓の外にお金を投げる) <アルフレード> (前と同様に) 小鳩ちゃん 愛しいぼくの小鳩ちゃん おいで おお早くおいでよ あこがれ一杯に ぼくは君のこと想ってる 愛しのロザリンデ! <アデーレ> 何よ、ロザリンデですって?路上のテナーはあたしにでなくて、私の奥様に歌を捧げてるのね! (窓の外に叫ぶ) ここにいるのはアデーレよ、ロザリンデじゃないわ 少なくともあなたが探し求めている人じゃないの!庭から出て行ってよ、でなきゃ全然違うテノールで歌って! 彼はテナーの歌声と共に消えたわ きっとどこかの男声合唱団ででもやっていくのね。しまった もっと近くで顔を見ておけばよかった、たぶんまだ追いつけるわ! (退場) 第2場 ロザリンデ、その後アデーレ <ロザリンデ> (興奮して登場) 彼だわ!アルフレッドよ、私がまだ独身だった4年前に私に憧れていた彼!あのテナーの歌声と大胆さですぐに彼だとわかったわ。テノールだけが大胆になれて、大胆な人だけがテノールで歌うことができるのね!あのひと わざわざ私の夫の家の前で高いAの音を出して私に恥をかかせようっていうのね! <アデーレ> (立ったままひとりごと) だれもいないのかしら - ああ、奥様がいるわ!今から作り話をしてみましょ、短いけど感動的な! (哀れっぽく) 奥様、あたしのかわいそうな叔母さんが重い病気なの! <ロザリンデ> (ひとりごと) 彼は私が浮気者で、たぶん別の男を愛していると思い込んだのでしょう それから私は結婚してしまった。 <アデーレ> (悲しそうに) 奥様、あたしのかわいそうな叔母さんが重い病気なの! <ロザリンデ> (まだひとりごとを続けている) だけどどうして彼は現れたのかしら 4年前に跡形もなくウィーンから消えてしまったのに 突然このリゾートに? <アデーレ> (嗚咽しながら) 奥様、あたしのかわいそうな叔母さんが重い病気なの! <ロザリンデ> 誰が病気ですって? <アデーレ> あたしの叔母さんです! <ロザリンデ> あなたの叔母さん? <アデーレ> そう、あたしの叔母さん! <ロザリンデ> (せっかちに) だけど私は彼女を元気にはしてあげられないわよ? <アデーレ> そんなことお願いしてません たとえ奥様に治してもらえたって <ロザリンデ> でしょうね! <アデーレ> (さらにすすり泣きながら) だけど良い姪の義務じゃないですか かわいそうな叔母さんを訪問して、 「具合はどうですか?お元気ですか? あなたはまだ陽気で幸せですか?」と尋ねるのが? <ロザリンデ> あなたの気の毒な、病気の叔母さんを? <アデーレ> だからお願いです この孝行心に免じてあたしにお休みを頂けないでしょうか <ロザリンデ> (きっぱりと) 無理よ! <アデーレ> (嘆願する) 奥様! <ロザリンデ> 無理よ、あなた忘れたのかしら、私の夫が今日から5日間の刑務所暮らしを始めなくっちゃならないことを?三回延期はしてもらったんだけど、今日こそ出頭しないと、強制収監されてしまうかもしれないのよ。 <アデーレ> 私はまだ旦那様が牢屋に入れられるわけを知らないんです <ロザリンデ> 彼は小役人を鞭で数回叩いて 「このタラの干物野郎」と罵ったのよ。 <アデーレ> それが理由なんですか? <ロザリンデ> あの人は上級審まで訴えたのだけれど、それは却って悪いことになってしまったみたいなの。 <アデーレ> 決して得にはならないのにですか? <ロザリンデ> だから助けてあげられないの。あなたのために一時間だって割くことができないんだから <アデーレ> だめなの?ああ、私のかわいそうな、かわいそうな叔母さん!もうこの世ではあなたに会えないかもしれないわ?あの叔母さんのような叔母さんを もう姪は叔母さんと呼ぶことはないのね! Nr. 1a - 導入部終結 <アデーレ> ああ あたし叔母さんのとこへは行けないのね! とても会いたがってくれているんだけど このとても大好きな姪っこにね あまりに悲しいお話だわ ああ どうして神様は あたしを女中にしたのかしら? <ロザリンデ> ダメよ 叔母さんのところへは今日は行けないわ たとえ叔母さんがどんなに会いたがっていても 確かに悲しいお話なのでしょうね 愛する姪御さんにとっては そう どうして神様は あなたを女中にしたのかしらね? <アデーレ> (泣きながら退場) 第3場 ロザリンデ <ロザリンデ> 一人で あの年老いた叔母さんは何て幸せ者なのかしら あんなに愛情深い姪がいるなんて!危険な状態になってなければいいんだけど。でも私はあの子なしではやっていけないのよ 私がひとり残されて夫が罰を受けている間は。きっとそうなるに違いないわ だってあの人は今、裁判官にひどく反抗して心証を害してるんだから (彼女の視線は中央のドアから現れるアルフレッドに向けられる) 神様、アルフレードだわ! 第4場 ロザリンデ、アルフレード <アルフレード> (近寄ってくる) どうして「私のアルフレッド」と両腕を広げて抱きついてはくれないのさ? <ロザリンデ> あなた、私は結婚してるのよ! <アルフレード> そんなこと構わないよ! <ロザリンデ> 私は構うの!出て行って! <アルフレード> お別れするために来たんじゃないよ! <ロザリンデ> 私の夫が来たらどうするのよ! <アルフレード> そんなの構わないよ!それに、彼は現れない、判決にぶつくさいうしかないんだ。 <ロザリンデ> ダメよ ダメ! (視線を上にあげて) 天の父よ、あの人がぶつぶつ言いませんように、お願いです! <アルフレード> 彼は神様が助けて下さらなかったとぶつくさ言うしかないのさ! <ロザリンデ> お願いよ お願いだから、ここから消えて! <アルフレード> 分かったよ 消えるよ だけどひとつ条件があるんだ もしもあなたの夫が収監されたらぼくはここへ戻ってきても良いと。誓っておくれよ ぼくを受け入れてくれると あなたが夫と別居中の間は。それならぼくはすぐに出て行くよ。 (演劇っぽく) 誓うかね! <ロザリンデ> 仕方ないわね...誓うわ! <アルフレード> ああそれじゃ...ぼくは行くよ! (立ったまま) <ロザリンデ> (せっかちに) 行ってないじゃない、まだ立ってるの!さよならよ! <アルフレード> (歌う) さよならじゃないよ!また会いましょう!すぐに私は戻ってきまーす! (退場) 第5場 ロザリンデ <ロザリンデ> (一人で) ああ、彼が歌わずにいてくれさえすれば!彼の口説きには、私は何とか対処できるんだけど、彼の高いBの音は私から抵抗する力を奪ってしまうの! おお運命の女神さま、なぜあなたは私をこのような目にあわせるのですか?あなたは私の夫の存在を奪うのと同時に、私の過去の姿を目の前に引っ張り出してくるのよ。何をこれから私はしなくてはならないの? 私のただひとつの希望は今や裁判所の言葉にかかっている。もし夫が刑を免れることができたなら、すべてがうまく行くの! おお だけどもし裁判官が自分の責務というのは人に「有罪」と叫ぶことだとしか考えていないとしたらどうしましょ、彼らが慈悲を示してくれればいいのだけれど! (聞く) ハッ、あのひとが来るわ!弁護士と口論してる。悪い知らせのようね! 第6場 ロザリンデ、アイゼンシュタイン。ブリント 書類の束を脇の下に抱え、眼鏡、かつらをつけている。 Nr. 2 - 三重唱 <アイゼンシュタイン> (興奮して駆け込んでくる) だめだ こんな弁護士じゃ 買収されて裏切られる もうガマンならん! <ロザリンデ> 落ち着いて! <ブリント> 落ち着いて! <アイゼンシュタイン> あっさり片がつくはずが もっと悪いことになってしまった それもこいつのせいだ! <ブリント> 誰のせいですと? <ロザリンデ> この人のせいなの? この人が悪いの? <アイゼンシュタイン> そうだ みんなこいつが悪いんだ! <ロザリンデ> この弁護士さんが? <ブリント> それは真実ではありません! <アイゼンシュタイン> すぐに分かるさ! <ロザリンデ> 何があったの?説明してちょうだい! <アイゼンシュタイン> だから聞いてくれよ! <ブリント> いや、まず私からご説明しましょう! <アイゼンシュタイン> 無駄な努力なんかするな! 言い訳できることなんか何がある! <ブリント> それは私を侮辱されるおつもりのように思えますが? <ロザリンデ> 気を静めて!どうして怒ってるの? <アイゼンシュタイン> この弁護士先生はオウムのように喋りやがって <ブリント> アイゼンシュタインさんはわめいてばかりで <アイゼンシュタイン> 貴様 どもらずに喋れんのか! <ブリント> あなたはいつでも喧嘩腰だ <アイゼンシュタイン> オンドリみたいに鳴きやがって! <ブリント> あなたは野蛮です! <アイゼンシュタイン> 貴様はうすのろだ! <ブリント> あなたは非人間的だ! <アイゼンシュタイン> ねちっこい肝油みたいに話しやがって 風見鶏のようにふらふらしやがって! <ブリント> 熱病のように怒るし 七面鳥のように突っかかる! <ロザリンデ> (アイゼンシュタインに) わめくのはやめて 静かにしてちょうだい (ブリントに) あなたは出て行った方がいいわ でないとスキャンダルになるかも! <アイゼンシュタイン> その通りだ 出て行け でないとスキャンダルになるぞ! <ブリント> だめだ その声は耐えられない 出て行きますとも (退場) <ロザリンデ> 怒るのはやめて 判決がでたなら仕方ないじゃない! ちょっと我慢すればいいんでしょ 5日間だけ 5日すればすべてが終わるのよ <アイゼンシュタイン> 5日だって? 8日になっちまったんだ 3日もおまけをつけられちまった あいつらが決めたことはこれさ! その上今日中に出頭しなくちゃならない もし来なければ連行に来るんだとさ! <ロザリンデ> それはひどいわ! <アイゼンシュタイン> だろ <ロザリンデ> ああ かわいそうなあなた 今日から服役なの? どんな慰めの言葉をかけたらいいの? どうやって私は耐えたらいいのかしら? <アイゼンシュタイン> ああ こんな弁護士じゃ 買収されて裏切られる もうガマンならん! <ロザリンデ> それもみんなあの人のせいなのね! <ブリント> (再び登場) 誰の責任ですと? <ロザリンデ> あなたのせいよ! <アイゼンシュタイン> 全部貴様のせいだ! <ブリント> あなたが釈放されたら 別の裁判を起こしましょう そのときにはあなたにお示ししましょう 私の本当の実力を! 上告だ 控訴だ 異議申立だ 再審だ 継承だ 逆転だ 転回だ 解決不能だ 抗告だ 調停だ 抄出だ 強奪だ 仲裁だ 要約だ 無罪だ 有罪だ 算定だ 起草だ... <ロザリンデ・アイゼンシュタイン> やめろ もうたくさんだ! <ブリント> そしてあなたは必ずや勝利するのです! <ロザリンデ> たとえどれほど書類の山を 高く積み上げたって 結局あなたは恥をかくだけでしょ そう 恥を! <アイゼンシュタイン> 貴様がいますぐ出てかないのなら 俺が貴様を叩き出してやる しまいにゃ力ずくでも 俺が貴様を叩き出してやる! <ブリント> 上告だ 控訴だ 異議申立だ 再審だ 継承だ 逆転だ 転回だ 解決不能だ 抗告だ 調停だ 抄出だ 強奪だ そしてあなたは必ずや勝利するのです 確実に勝利する <ロザリンデ> ああこんな弁護士さんじゃ ろくなことにならないのね 全くのところ ガマンするしかないわ あっさり片がつくはずが もっと悪いことになってしまった それも皆 この人のせいなのね! <アイゼンシュタイン> だめだ こんな弁護士じゃ 買収されて裏切られる もうガマンならん! あっさり片がつくはずが もっと悪いことになってしまった それも皆 こいつのせいだ! <ブリント> ああ 私たち哀れな弁護士は いつでも助けたり 助言したり それには忍耐力が必要 あっさり片がつくはずが もっと悪いことになってしまいましたが それも皆 (アイゼンシュタインに向かって) あなたのせいなのです! <ロザリンデ> (語る) じゃあ罪はさらに悪いことになったの?5日でなくて - 8日に! <アイゼンシュタイン> この増えた分はまったくこのドモりの弁護士先生のおかげさ <ブリント> おこ おこ 怒らせないでください!あなたは自分の行いによって裁判官を憤慨させ、私をこ、こ、混乱させてしまったのです。けれど、私は恨んだり致しませんので、あなたが再び投獄されるようなことがあれば、今度は私の力量をお見せしますよ! <アイゼンシュタイン> ああ よろしくお頼み申し上げますよってんだ! <ブリント> 再び紛争がやってくることあれば、あなたに恥をかかせは致しません。...次こそは、絶対成功します! <アイゼンシュタイン> そうだろうよ 賞賛に値するぜ! <ブリント> どういたしまして! (素早くドアの外へ) ERSTER AKT Ouvertüre Zimmer mit Mittel- und Seitentüren im Hause Eisensteins. ERSTER AUFTRITT Alfred hinter der Szene. Später Adele. Nr. 1 - Introduktion Beim Aufgehen des Vorhangs ist die Bühne leer. Von aussen ertönt der Gesang Alfreds. ALFRED Täubchen, das entflattert ist, Stille mein Verlangen, Täubchen, das ich oft geküsst, Lass dich wieder fangen! Täubchen, holdes Täubchen mein, Komm, o komm geschwinde, Sehnsuchtsvoll gedenk ich dein, Holde Rosalinde! ADELE lachend mit einem offenen Briefchen in der Hand auftretend. Hahahaha! Was schreibt meine Schwester Ida? Die ist nämlich beim Ballett ... Aus dem Briefe lesend. "Wir sind heut auf einer Villa, Wo es hergeht flott und nett. Prinz Orlofsky, der reiche Suitier, Gibt heute abend dort ein Grand-Souper. Kannst du dir eine Toilette von deiner Gnäd gen annektieren Und elegant dich präsentieren, So will ich gern dich ein dort führen. Mach dich frei nur, und ich wette, Dass wir gut uns amüsieren. Langeweile gibt es nie da!" - So schreibt meine Schwester Ida. Ach, ich glaub s, ich zweifle nicht, Wär gar zu gern von der Partie; Doch recht schwierig ist die G schicht - Könnt ich nur fort, wüsst ich nur wie? Ach, wenn ich jenes Täubchen wär , Fliegen könnte hin und her, Mich in Wonne und Vergnügen In dem blauen Äther wiegen! Ach, warum schufst du, Natur, Mich zur Kammerjungfer nur? ALFRED singt von aussen Täubchen, das entflattert ist, Stille mein Verlangen ... ADELE spricht Was ist denn das für ein Gewinsel? Ob man wohl eine Minute nachdenken kann? ALFRED fortfahrend Täubchen, das ich oft geküsst, Lass dich wieder fangen! ADELE eine Münze in ein Papier wickelnd Ich muss ihm nur ein Sechserl spendieren, sonst hört der Hofsänger nicht auf! Wirft das Geld aus dem Fenster. ALFRED wie oben Täubchen, holdes Täubchen mein, Komm, o komm geschwinde, Sehnsuchtsvoll gedenk ich dein, Holde Rosalinde! ADELE Was, Rosalinde? Das ist kein Strassentenor, sondern ein Verehrer und nicht einmal von mir, sondern von meiner Gnädigen! Ruft zum Fenster hinaus Eine Adele ist hier und keine Rosalinde, wenigstens nicht für Sie! Verlassen Sie den Garten, sonst wird man einen ganz anderen Tenor mit Ihnen singen. Er verschwindet samt seinem Tenor Der ist sicher irgendwo einem Männergesangverein ausgekommen. Schade, ich hätt mir ihn doch näher ansehen sollen; vielleicht kann ich ihn noch erreichen! Läuft ab. ZWEITER AUFTRITT Rosalinde. Dann Adele. ROSALINDE tritt erregt auf Er ist s! Alfred, er, der mich vor vier Jahren anbetete, als ich noch frei war! Ich habe ihn gleich erkannt an seinem Tenor und an seiner Keckheit. Nur ein Tenor kann so keck sein, und nur ein kecker Mensch kann so Tenor singen! Er wagt es, hier vor dem Hause meines Gatten mich durch sein hohes A zu kompromittieren! ADELE eintretend für sich Keine Seele mehr zu erblicken. - Ah, da ist meine Gnädige! Jetzt heraus mit der Geschichte; sie sei kurz, aber rührend! Laut, kläglich Gnädige Frau, meine arme Tante ist so krank! ROSALINDE für sich Sicher hält er mich für treulos, glaubt vielleicht, ich liebe einen anderen, und ich habe doch bloss geheiratet. ADELE kläglicher Gnädige Frau, meine arme Tante ist krank! ROSALINDE immer noch für sich Aber wie kommt er, der vor vier Jahren spurlos aus Wien verschwand, so plötzlich in diesen Badeort? ADELE schluchzend Gnädige Frau, meine arme Tante ist so krank! ROSALINDE Wer ist krank? ADELE Meine Tante! ROSALINDE Deine Tante? ADELE Ja, meine Tante! ROSALINDE ungeduldig Aber kann ich sie denn gesund machen? ADELE Das verlange ich gar nicht, wenn Sie es auch könnten. ROSALINDE Na also! ADELE weiterschluchzend Aber es ist doch die Pflicht einer guten Nichte, ihre arme Tante zu besuchen und zu fragen "Wie geht s? Wie befinden Sie sich? Noch immer fidel und munter?" ROSALINDE Deine arme, kranke Tante? ADELE Darum bitte ich Sie, mir aus Rücksicht für meine nichtige Liebe freien Ausgang zu gewähren. ROSALINDE bestimmt Unmöglich! ADELE bittend Gnädige Frau! ROSALINDE Unmöglich, sage ich. Hast du denn vergessen, dass mein Gemahl heute seine fünftägige Arreststrafe antreten muss? Dreimal ist sie schon verschoben worden; aber heute muss er sich stellen, sonst wird er gestellt. ADELE Aber ich weiss noch immer nicht, warum der gnädige Herr eigentlich eingesperrt wird? ROSALINDE Weil er einem Amtsdiener ein paar Hiebe mit der Reitpeitsche gegeben und ihn einen Stockfisch genannt hat. ADELE Wegen so einem bisserl? ROSALINDE Er hat schon an alle Instanzen appelliert, aber das wird ihm eher schaden als nützen. ADELE Wenn es ihm aber dennoch nützt? ROSALINDE So wird es dir nichts nützen, denn ich kann dich nicht eine Stunde entbehren. ADELE Nicht? O meine arme, arme Tante! So darf ich dich nicht mehr wiedersehen auf Erden? Eine solche Tante wie diese Tante - noch keine Nichte Tante nannte! Nr. 1a - Ende der Introduktion ADELE Ach, ich darf nicht hin zu dir, Und du sehnst dich so nach mir, Deiner heissgeliebten Nichte. Gar zu traurig ist die G schichte! Ach, warum schuf die Natur Mich zur Kammerjungfer nur? ROSALINDE Nein, du darfst heut nicht zu ihr, Und wenn sie sich auch sehnt nach dir! Wohl traurig klingt die G schichte Von der geliebten Nichte. Ja, warum schuf die Natur Dich zur Kammerjungfer nur? ADELE schluchzend ab. DRITTER AUFTRITT Rosalinde. ROSALINDE allein Wie glücklich die alte Tante ist, eine so liebevolle Nichte zu haben! Es wird nicht so gefährlich sein, hoffe ich. Ich kann sie ja nicht entbehren, weil ich nicht allein bleiben darf, wenn mein Mann in der Tat seine Strafe antreten muss. Und der wird er nicht entgehen, denn jetzt hat er die Richter erst recht erbittert gegen sich. Ihr Blick fällt auf Alfred, der in der Mitteltür erscheint. Himmel, Alfred! VIERTER AUFTRITT Rosalinde. Alfred. ALFRED vortretend Warum denn nicht mein Alfred und mir mit offenen Armen entgegengeflogen? ROSALINDE Mein Herr, ich bin verheiratet! ALFRED Das geniert mich nicht! ROSALINDE Aber mich! Entfernen Sie sich! ALFRED Ich bin ja nicht gekommen, um mich zu entfernen! ROSALINDE Himmel, wenn mein Mann erschiene! ALFRED Das geniert mich nicht! Übrigens erscheint er nicht, er muss brummen. ROSALINDE Nein, nein! den Blick erhebend Vater im Himmel, lass ihn nicht brummen, ich bitte dich! ALFRED Er muss brummen, da hilft ihm kein Gott! ROSALINDE Ich bitte, ich beschwöre Sie, verlieren Sie sich! ALFRED Wohlan, ich verliere mich, jedoch nur unter der Bedingung, dass ich wiederkehren darf, wenn Ihr Gemahl brummt. Schwören Sie mir, dass Sie mich empfangen werden, wenn Sie Strohwitwe sind, und ich entferne mich augenblicklich. theatralisch Schwöre! ROSALINDE Es sei ... ich schwöre! ALFRED Nun denn ... ich gehe! Bleibt stehen. ROSALINDE ungeduldig Sie gehen aber nicht, sondern stehen noch immer! Leben Sie wohl! ALFRED singt Kein Lebewohl! Auf Wiedersehen! Bald bin ich wieder da! Ab. FÜNFTER AUFTRITT Rosalinde. ROSALINDE allein Oh, wenn er nur nicht singen wollte! Seinem Dialog bin ich noch allenfalls gewachsen, aber vor seinem hohen B schmilzt meine Kraft dahin! O Schicksal, Schicksal, warum hast du mir das angetan? In dem Augenblick, wo du mir die Gegenwart des Gatten entziehst, führst du mir das Bild der Vergangenheit vor Augen. Was soll aus der Zukunft meiner Pflichten werden? Meine einzige Hoffnung beruht jetzt noch auf dem Ausspruch des Gerichts. Wird meinem Gatten die Arreststrafe erlassen, dann ist alles gut! Oh, wenn die Richter wüssten, welche Verantwortung sie durch seine Verurteilung auf sich laden, sie würden Gnade walten lassen! horcht Ha, er kommt! Er zankt mit seinem Advokaten. Ein böses Zeichen! SECHSTER AUFTRITT Rosalinde. Eisenstein. Blind, Aktenstösse unterm Arm, Augengläser und Perücke. Nr. 2 - Terzett EISENSTEIN aufgeregt eintretend Nein, mit solchen Advokaten Ist verkauft man und verraten; Da verliert man die Geduld! ROSALINDE Nur Geduld! BLIND Nur Geduld! EISENSTEIN Statt dass jetzt die Sach beendet, Hat s noch schlimmer sich gewendet, Und daran ist er nur schuld! BLIND Wer ist schuld? ROSALINDE Der ist schuld? Der wäre schuld? EISENSTEIN Ja, der ist ganz allein nur schuld! ROSALINDE Der Herr Notar? BLIND Das ist nicht wahr! EISENSTEIN Du wirst schon sehn! ROSALINDE Was ist geschehn? Erkläre dich! EISENSTEIN So höre mich! BLIND Nein, erst will ich verteid gen mich! EISENSTEIN Ersparen Sie sich diese Müh! So etwas ist nicht zu verteid gen! BLIND Mir scheint, Sie wollen mich beleid gen? ROSALINDE Nur ruhig Blut! Warum die Wut? EISENSTEIN Der Herr Notar schwatzt wie ein Star. BLIND Herr Eisenstein fing an zu schrein. EISENSTEIN Sie stottern ja bei jedem Wort! BLIND Sie schimpfen ja in einem fort. EISENSTEIN Sie krähen wie ein Hahn! BLIND Sie sind ein Grobian! EISENSTEIN Sie sind ein Dummrian! BLIND Sie sind sehr inhuman! EISENSTEIN Sie reden lauter Lebertran Und drehn sich wie ein Wetterhahn! BLIND Sie rasen wie im Fieberwahn Und kollern wie ein Puterhahn! ROSALINDE zu Eisenstein Doch schone dein Organ, Es sei nun abgetan. zu Blind Das beste wär , Sie gehn hinaus, Sonst wird noch ein Skandal daraus! EISENSTEIN Ja, sie hat recht! Gehn Sie hinaus, Sonst wird noch ein Skandal daraus! BLIND Nein, diesen Ton hält man nicht aus. Ich gehe schon, ich geh hinaus! Ab ROSALINDE Beruh ge endlich diese Wut. Verurteilt bist du; nun denn - gut! Ergib dich drein, und nach fünf Tagen, Schon nach fünf Tagen ist die G schichte abgemacht. EISENSTEIN Fünf Tage sagst du? Jetzt sind s gar acht! Man hat mir drei dazugeschlagen. So weit hat s dieser Mensch gebracht! Noch heute soll ich stellen mich, Und komm ich nicht, so holt man mich! ROSALINDE Das ist zu stark, das muss ich sagen. EISENSTEIN Nicht wahr? ROSALINDE. Ach, mein armer, armer Mann, Noch heute also musst du dran? Was kann ich dir zum Tröste sagen? Wie soll ich das ertragen? EISENSTEIN Ach, mit solchen Advokaten Ist verkauft man und verraten! Da verliert man die Geduld! ROSALINDE Und daran ist der nur schuld! BLIND tritt wieder ein Wer ist schuld? ROSALINDE Sie sind schuld! EISENSTEIN Der ist ganz allein nur schuld! BLIND Wenn Sie nur erst wieder frei, Prozessieren wir aufs neu, Und ich werde Ihnen dann schon zeigen, was ich kann Rekurrieren, appellieren, reklamieren, Revidieren, rezipieren, subvertieren, Devolvieren, insolvieren, protestieren, Liquidieren, exzerpieren, extorquieren, Arbitrieren, resummieren, exkulpieren, Inkulpieren, kalkulieren, konzipieren ... ROSALINDE, EISENSTEIN Hören Sie auf, es ist genug! BLIND Und Sie müssen triumphieren! ROSALINDE Ob Sie Berge von Papieren Auch dabei zusammenschmieren, Doch Sie werden schliesslich sich blamieren Ja, ach ja, blamieren! EISENSTEIN Wenn Sie jetzt nicht retirieren, Muss ich Sie hinausbugsieren Und vielleicht noch schliesslich attackieren! Muss ich Sie hinausbugsieren! BLIND Rekurrieren, appellieren, reklamieren, Revidieren, rezipieren, subvertieren, Devolvieren, involvieren, protestieren, Liquidieren, exzerpieren, extorquieren, Ja, Sie werden triumphieren, Triumphieren sicherlich! ROSALINDE Ach, mit solchen Advokaten Ist man übel oft beraten, Und fürwahr, man braucht Geduld. Statt dass jetzt die Sach beendet, Hat s noch schlimmer sich gewendet, Und nur der allein ist schuld! EISENSTEIN Nein, mit solchen Advokaten Ist verkauft man und verraten Und verliert man die Geduld. Statt dass jetzt die Sach beendet, Hat s noch schlimmer sich gewendet, Und daran ist der nur schuld! BLIND Ach, wir armen Advokaten Sollen immer helfen, raten, Dazu braucht man viel Geduld. Statt dass jetzt die Sach beendet, Hat s noch schlimmer sich gewendet, Und daran zu Eisenstein sind Sie nur schuld! ROSALINDE spricht Also noch verschärft die Strafe? Statt fünf Tage - acht Tage! EISENSTEIN Diese Zulage habe ich Herrn Dr. Stotterbock zu danken. BLIND Rei ... rei ... reizen Sie mich nicht! Sie allein haben durch Ihr Benehmen die Richter erbittert und mich obendrein ko ... ko ... konfus gemacht. Aber ich will Ihnen nichts nachtragen, und wenn Sie wieder einmal tüchtig eingesperrt werden sollen, vertret ich Sie abermals! EISENSTEIN Ja, ich bitte recht sehr! BLIND Wenn Sie wieder einmal mit einem Amtsdiener einen Konflikt haben sollten, genieren Sie sich nicht ... Das nächste Mal arbeite ich Sie ganz sicher heraus! EISENSTEIN Alle Donnerwetter, ich empfehle mich Ihnen! BLIND Ihr Diener! Schnell zur Tür hinaus. この日本語テキストは、 クリエイティブ・コモンズ・ライセンス の下でライセンスされています。@ 藤井宏行 Strauss,Johann II/Die Fledermaus/I-2
https://w.atwiki.jp/fattencho/pages/29.html
/*! * jQuery JavaScript Library v1.4.3 * http //jquery.com/ * * Copyright 2010, John Resig * Dual licensed under the MIT or GPL Version 2 licenses. * http //jquery.org/license * * Includes Sizzle.js * http //sizzlejs.com/ * Copyright 2010, The Dojo Foundation * Released under the MIT, BSD, and GPL Licenses. * * Date Thu Oct 14 23 10 06 2010 -0400 */ (function( window, undefined ) { // Use the correct document accordingly with window argument (sandbox) var document = window.document; var jQuery = (function() { // Define a local copy of jQuery var jQuery = function( selector, context ) { // The jQuery object is actually just the init constructor enhanced return new jQuery.fn.init( selector, context ); }, // Map over jQuery in case of overwrite _jQuery = window.jQuery, // Map over the $ in case of overwrite _$ = window.$, // A central reference to the root jQuery(document) rootjQuery, // A simple way to check for HTML strings or ID strings // (both of which we optimize for) quickExpr = /^(? [^ ]*( [\w\W]+ )[^ ]*$|#([\w\-]+)$)/, // Is it a simple selector isSimple = /^.[^ #\[\.,]*$/, // Check if a string has a non-whitespace character in it rnotwhite = /\S/, rwhite = /\s/, // Used for trimming whitespace trimLeft = /^\s+/, trimRight = /\s+$/, // Check for non-word characters rnonword = /\W/, // Check for digits rdigit = /\d/, // Match a standalone tag rsingleTag = /^ (\w+)\s*\/? (? \/\1 )?$/, // JSON RegExp rvalidchars = /^[\], {}\s]*$/, rvalidescape = /\\(? ["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, rvalidtokens = /"[^"\\\n\r]*"|true|false|null|-?\d+(? \.\d*)?(? [eE][+\-]?\d+)?/g, rvalidbraces = /(? ^| |,)(? \s*\[)+/g, // Useragent RegExp rwebkit = /(webkit)[ \/]([\w.]+)/, ropera = /(opera)(? .*version)?[ \/]([\w.]+)/, rmsie = /(msie) ([\w.]+)/, rmozilla = /(mozilla)(? .*? rv ([\w.]+))?/, // Keep a UserAgent string for use with jQuery.browser userAgent = navigator.userAgent, // For matching the engine and version of the browser browserMatch, // Has the ready events already been bound? readyBound = false, // The functions to execute on DOM ready readyList = [], // The ready event handler DOMContentLoaded, // Save a reference to some core methods toString = Object.prototype.toString, hasOwn = Object.prototype.hasOwnProperty, push = Array.prototype.push, slice = Array.prototype.slice, trim = String.prototype.trim, indexOf = Array.prototype.indexOf, // [[Class]] - type pairs class2type = {}; jQuery.fn = jQuery.prototype = { init function( selector, context ) { var match, elem, ret, doc; // Handle $(""), $(null), or $(undefined) if ( !selector ) { return this; } // Handle $(DOMElement) if ( selector.nodeType ) { this.context = this[0] = selector; this.length = 1; return this; } // The body element only exists once, optimize finding it if ( selector === "body" !context document.body ) { this.context = document; this[0] = document.body; this.selector = "body"; this.length = 1; return this; } // Handle HTML strings if ( typeof selector === "string" ) { // Are we dealing with HTML string or an ID? match = quickExpr.exec( selector ); // Verify a match, and that no context was specified for #id if ( match (match[1] || !context) ) { // HANDLE $(html) - $(array) if ( match[1] ) { doc = (context ? context.ownerDocument || context document); // If a single string is passed in and it s a single tag // just do a createElement and skip the rest ret = rsingleTag.exec( selector ); if ( ret ) { if ( jQuery.isPlainObject( context ) ) { selector = [ document.createElement( ret[1] ) ]; jQuery.fn.attr.call( selector, context, true ); } else { selector = [ doc.createElement( ret[1] ) ]; } } else { ret = jQuery.buildFragment( [ match[1] ], [ doc ] ); selector = (ret.cacheable ? ret.fragment.cloneNode(true) ret.fragment).childNodes; } return jQuery.merge( this, selector ); // HANDLE $("#id") } else { elem = document.getElementById( match[2] ); // Check parentNode to catch when Blackberry 4.6 returns // nodes that are no longer in the document #6963 if ( elem elem.parentNode ) { // Handle the case where IE and Opera return items // by name instead of ID if ( elem.id !== match[2] ) { return rootjQuery.find( selector ); } // Otherwise, we inject the element directly into the jQuery object this.length = 1; this[0] = elem; } this.context = document; this.selector = selector; return this; } // HANDLE $("TAG") } else if ( !context !rnonword.test( selector ) ) { this.selector = selector; this.context = document; selector = document.getElementsByTagName( selector ); return jQuery.merge( this, selector ); // HANDLE $(expr, $(...)) } else if ( !context || context.jquery ) { return (context || rootjQuery).find( selector ); // HANDLE $(expr, context) // (which is just equivalent to $(context).find(expr) } else { return jQuery( context ).find( selector ); } // HANDLE $(function) // Shortcut for document ready } else if ( jQuery.isFunction( selector ) ) { return rootjQuery.ready( selector ); } if (selector.selector !== undefined) { this.selector = selector.selector; this.context = selector.context; } return jQuery.makeArray( selector, this ); }, // Start with an empty selector selector "", // The current version of jQuery being used jquery "1.4.3", // The default length of a jQuery object is 0 length 0, // The number of elements contained in the matched element set size function() { return this.length; }, toArray function() { return slice.call( this, 0 ); }, // Get the Nth element in the matched element set OR // Get the whole matched element set as a clean array get function( num ) { return num == null ? // Return a clean array this.toArray() // Return just the object ( num 0 ? this.slice(num)[ 0 ] this[ num ] ); }, // Take an array of elements and push it onto the stack // (returning the new matched element set) pushStack function( elems, name, selector ) { // Build a new jQuery matched element set var ret = jQuery(); if ( jQuery.isArray( elems ) ) { push.apply( ret, elems ); } else { jQuery.merge( ret, elems ); } // Add the old object onto the stack (as a reference) ret.prevObject = this; ret.context = this.context; if ( name === "find" ) { ret.selector = this.selector + (this.selector ? " " "") + selector; } else if ( name ) { ret.selector = this.selector + "." + name + "(" + selector + ")"; } // Return the newly-formed element set return ret; }, // Execute a callback for every element in the matched set. // (You can seed the arguments with an array of args, but this is // only used internally.) each function( callback, args ) { return jQuery.each( this, callback, args ); }, ready function( fn ) { // Attach the listeners jQuery.bindReady(); // If the DOM is already ready if ( jQuery.isReady ) { // Execute the function immediately fn.call( document, jQuery ); // Otherwise, remember the function for later } else if ( readyList ) { // Add the function to the wait list readyList.push( fn ); } return this; }, eq function( i ) { return i === -1 ? this.slice( i ) this.slice( i, +i + 1 ); }, first function() { return this.eq( 0 ); }, last function() { return this.eq( -1 ); }, slice function() { return this.pushStack( slice.apply( this, arguments ), "slice", slice.call(arguments).join(",") ); }, map function( callback ) { return this.pushStack( jQuery.map(this, function( elem, i ) { return callback.call( elem, i, elem ); })); }, end function() { return this.prevObject || jQuery(null); }, // For internal use only. // Behaves like an Array s method, not like a jQuery method. push push, sort [].sort, splice [].splice }; // Give the init function the jQuery prototype for later instantiation jQuery.fn.init.prototype = jQuery.fn; jQuery.extend = jQuery.fn.extend = function() { // copy reference to target object var target = arguments[0] || {}, i = 1, length = arguments.length, deep = false, options, name, src, copy, copyIsArray; // Handle a deep copy situation if ( typeof target === "boolean" ) { deep = target; target = arguments[1] || {}; // skip the boolean and the target i = 2; } // Handle case when target is a string or something (possible in deep copy) if ( typeof target !== "object" !jQuery.isFunction(target) ) { target = {}; } // extend jQuery itself if only one argument is passed if ( length === i ) { target = this; --i; } for ( ; i length; i++ ) { // Only deal with non-null/undefined values if ( (options = arguments[ i ]) != null ) { // Extend the base object for ( name in options ) { src = target[ name ]; copy = options[ name ]; // Prevent never-ending loop if ( target === copy ) { continue; } // Recurse if we re merging plain objects or arrays if ( deep copy ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) { if ( copyIsArray ) { copyIsArray = false; clone = src jQuery.isArray(src) ? src []; } else { clone = src jQuery.isPlainObject(src) ? src {}; } // Never move original objects, clone them target[ name ] = jQuery.extend( deep, clone, copy ); // Don t bring in undefined values } else if ( copy !== undefined ) { target[ name ] = copy; } } } } // Return the modified object return target; }; jQuery.extend({ noConflict function( deep ) { window.$ = _$; if ( deep ) { window.jQuery = _jQuery; } return jQuery; }, // Is the DOM ready to be used? Set to true once it occurs. isReady false, // A counter to track how many items to wait for before // the ready event fires. See #6781 readyWait 1, // Handle when the DOM is ready ready function( wait ) { // A third-party is pushing the ready event forwards if ( wait === true ) { jQuery.readyWait--; } // Make sure that the DOM is not already loaded if ( !jQuery.readyWait || (wait !== true !jQuery.isReady) ) { // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443). if ( !document.body ) { return setTimeout( jQuery.ready, 1 ); } // Remember that the DOM is ready jQuery.isReady = true; // If a normal DOM Ready event fired, decrement, and wait if need be if ( wait !== true --jQuery.readyWait 0 ) { return; } // If there are functions bound, to execute if ( readyList ) { // Execute all of them var fn, i = 0; while ( (fn = readyList[ i++ ]) ) { fn.call( document, jQuery ); } // Reset the list of functions readyList = null; } // Trigger any bound ready events if ( jQuery.fn.triggerHandler ) { jQuery( document ).triggerHandler( "ready" ); } } }, bindReady function() { if ( readyBound ) { return; } readyBound = true; // Catch cases where $(document).ready() is called after the // browser event has already occurred. if ( document.readyState === "complete" ) { // Handle it asynchronously to allow scripts the opportunity to delay ready return setTimeout( jQuery.ready, 1 ); } // Mozilla, Opera and webkit nightlies currently support this event if ( document.addEventListener ) { // Use the handy event callback document.addEventListener( "DOMContentLoaded", DOMContentLoaded, false ); // A fallback to window.onload, that will always work window.addEventListener( "load", jQuery.ready, false ); // If IE event model is used } else if ( document.attachEvent ) { // ensure firing before onload, // maybe late but safe also for iframes document.attachEvent("onreadystatechange", DOMContentLoaded); // A fallback to window.onload, that will always work window.attachEvent( "onload", jQuery.ready ); // If IE and not a frame // continually check to see if the document is ready var toplevel = false; try { toplevel = window.frameElement == null; } catch(e) {} if ( document.documentElement.doScroll toplevel ) { doScrollCheck(); } } }, // See test/unit/core.js for details concerning isFunction. // Since version 1.3, DOM methods and functions like alert // aren t supported. They return false on IE (#2968). isFunction function( obj ) { return jQuery.type(obj) === "function"; }, isArray Array.isArray || function( obj ) { return jQuery.type(obj) === "array"; }, // A crude way of determining if an object is a window isWindow function( obj ) { return obj typeof obj === "object" "setInterval" in obj; }, isNaN function( obj ) { return obj == null || !rdigit.test( obj ) || isNaN( obj ); }, type function( obj ) { return obj == null ? String( obj ) class2type[ toString.call(obj) ] || "object"; }, isPlainObject function( obj ) { // Must be an Object. // Because of IE, we also have to check the presence of the constructor property. // Make sure that DOM nodes and window objects don t pass through, as well if ( !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) { return false; } // Not own constructor property must be Object if ( obj.constructor !hasOwn.call(obj, "constructor") !hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) { return false; } // Own properties are enumerated firstly, so to speed up, // if last one is own, then all properties are own. var key; for ( key in obj ) {} return key === undefined || hasOwn.call( obj, key ); }, isEmptyObject function( obj ) { for ( var name in obj ) { return false; } return true; }, error function( msg ) { throw msg; }, parseJSON function( data ) { if ( typeof data !== "string" || !data ) { return null; } // Make sure leading/trailing whitespace is removed (IE can t handle it) data = jQuery.trim( data ); // Make sure the incoming data is actual JSON // Logic borrowed from http //json.org/json2.js if ( rvalidchars.test(data.replace(rvalidescape, "@") .replace(rvalidtokens, "]") .replace(rvalidbraces, "")) ) { // Try to use the native JSON parser first return window.JSON window.JSON.parse ? window.JSON.parse( data ) (new Function("return " + data))(); } else { jQuery.error( "Invalid JSON " + data ); } }, noop function() {}, // Evalulates a script in a global context globalEval function( data ) { if ( data rnotwhite.test(data) ) { // Inspired by code by Andrea Giammarchi // http //webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom.html var head = document.getElementsByTagName("head")[0] || document.documentElement, script = document.createElement("script"); script.type = "text/javascript"; if ( jQuery.support.scriptEval ) { script.appendChild( document.createTextNode( data ) ); } else { script.text = data; } // Use insertBefore instead of appendChild to circumvent an IE6 bug. // This arises when a base node is used (#2709). head.insertBefore( script, head.firstChild ); head.removeChild( script ); } }, nodeName function( elem, name ) { return elem.nodeName elem.nodeName.toUpperCase() === name.toUpperCase(); }, // args is for internal usage only each function( object, callback, args ) { var name, i = 0, length = object.length, isObj = length === undefined || jQuery.isFunction(object); if ( args ) { if ( isObj ) { for ( name in object ) { if ( callback.apply( object[ name ], args ) === false ) { break; } } } else { for ( ; i length; ) { if ( callback.apply( object[ i++ ], args ) === false ) { break; } } } // A special, fast, case for the most common use of each } else { if ( isObj ) { for ( name in object ) { if ( callback.call( object[ name ], name, object[ name ] ) === false ) { break; } } } else { for ( var value = object[0]; i length callback.call( value, i, value ) !== false; value = object[++i] ) {} } } return object; }, // Use native String.trim function wherever possible trim trim ? function( text ) { return text == null ? "" trim.call( text ); } // Otherwise use our own trimming functionality function( text ) { return text == null ? "" text.toString().replace( trimLeft, "" ).replace( trimRight, "" ); }, // results is for internal usage only makeArray function( array, results ) { var ret = results || []; if ( array != null ) { // The window, strings (and functions) also have length // The extra typeof function check is to prevent crashes // in Safari 2 (See #3039) // Tweaked logic slightly to handle Blackberry 4.7 RegExp issues #6930 var type = jQuery.type(array); if ( array.length == null || type === "string" || type === "function" || type === "regexp" || jQuery.isWindow( array ) ) { push.call( ret, array ); } else { jQuery.merge( ret, array ); } } return ret; }, inArray function( elem, array ) { if ( array.indexOf ) { return array.indexOf( elem ); } for ( var i = 0, length = array.length; i length; i++ ) { if ( array[ i ] === elem ) { return i; } } return -1; }, merge function( first, second ) { var i = first.length, j = 0; if ( typeof second.length === "number" ) { for ( var l = second.length; j l; j++ ) { first[ i++ ] = second[ j ]; } } else { while ( second[j] !== undefined ) { first[ i++ ] = second[ j++ ]; } } first.length = i; return first; }, grep function( elems, callback, inv ) { var ret = [], retVal; inv = !!inv; // Go through the array, only saving the items // that pass the validator function for ( var i = 0, length = elems.length; i length; i++ ) { retVal = !!callback( elems[ i ], i ); if ( inv !== retVal ) { ret.push( elems[ i ] ); } } return ret; }, // arg is for internal usage only map function( elems, callback, arg ) { var ret = [], value; // Go through the array, translating each of the items to their // new value (or values). for ( var i = 0, length = elems.length; i length; i++ ) { value = callback( elems[ i ], i, arg ); if ( value != null ) { ret[ ret.length ] = value; } } return ret.concat.apply( [], ret ); }, // A global GUID counter for objects guid 1, proxy function( fn, proxy, thisObject ) { if ( arguments.length === 2 ) { if ( typeof proxy === "string" ) { thisObject = fn; fn = thisObject[ proxy ]; proxy = undefined; } else if ( proxy !jQuery.isFunction( proxy ) ) { thisObject = proxy; proxy = undefined; } } if ( !proxy fn ) { proxy = function() { return fn.apply( thisObject || this, arguments ); }; } // Set the guid of unique handler to the same of original handler, so it can be removed if ( fn ) { proxy.guid = fn.guid = fn.guid || proxy.guid || jQuery.guid++; } // So proxy can be declared as an argument return proxy; }, // Mutifunctional method to get and set values to a collection // The value/s can be optionally by executed if its a function access function( elems, key, value, exec, fn, pass ) { var length = elems.length; // Setting many attributes if ( typeof key === "object" ) { for ( var k in key ) { jQuery.access( elems, k, key[k], exec, fn, value ); } return elems; } // Setting one attribute if ( value !== undefined ) { // Optionally, function values get executed if exec is true exec = !pass exec jQuery.isFunction(value); for ( var i = 0; i length; i++ ) { fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) value, pass ); } return elems; } // Getting an attribute return length ? fn( elems[0], key ) undefined; }, now function() { return (new Date()).getTime(); }, // Use of jQuery.browser is frowned upon. // More details http //docs.jquery.com/Utilities/jQuery.browser uaMatch function( ua ) { ua = ua.toLowerCase(); var match = rwebkit.exec( ua ) || ropera.exec( ua ) || rmsie.exec( ua ) || ua.indexOf("compatible") 0 rmozilla.exec( ua ) || []; return { browser match[1] || "", version match[2] || "0" }; }, browser {} }); // Populate the class2type map jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(i, name) { class2type[ "[object " + name + "]" ] = name.toLowerCase(); }); browserMatch = jQuery.uaMatch( userAgent ); if ( browserMatch.browser ) { jQuery.browser[ browserMatch.browser ] = true; jQuery.browser.version = browserMatch.version; } // Deprecated, use jQuery.browser.webkit instead if ( jQuery.browser.webkit ) { jQuery.browser.safari = true; } if ( indexOf ) { jQuery.inArray = function( elem, array ) { return indexOf.call( array, elem ); }; } // Verify that \s matches non-breaking spaces // (IE fails on this test) if ( !rwhite.test( "\xA0" ) ) { trimLeft = /^[\s\xA0]+/; trimRight = /[\s\xA0]+$/; } // All jQuery objects should point back to these rootjQuery = jQuery(document); // Cleanup functions for the document ready method if ( document.addEventListener ) { DOMContentLoaded = function() { document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false ); jQuery.ready(); }; } else if ( document.attachEvent ) { DOMContentLoaded = function() { // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443). if ( document.readyState === "complete" ) { document.detachEvent( "onreadystatechange", DOMContentLoaded ); jQuery.ready(); } }; } // The DOM ready check for Internet Explorer function doScrollCheck() { if ( jQuery.isReady ) { return; } try { // If IE is used, use the trick by Diego Perini // http //javascript.nwbox.com/IEContentLoaded/ document.documentElement.doScroll("left"); } catch(e) { setTimeout( doScrollCheck, 1 ); return; } // and execute any waiting functions jQuery.ready(); } // Expose jQuery to the global object return (window.jQuery = window.$ = jQuery); })(); (function() { jQuery.support = {}; var root = document.documentElement, script = document.createElement("script"), div = document.createElement("div"), id = "script" + jQuery.now(); div.style.display = "none"; div.innerHTML = " link/ table /table a href= /a style= color red;float left;opacity .55; a /a input type= checkbox / "; var all = div.getElementsByTagName("*"), a = div.getElementsByTagName("a")[0], select = document.createElement("select"), opt = select.appendChild( document.createElement("option") ); // Can t get basic test support if ( !all || !all.length || !a ) { return; } jQuery.support = { // IE strips leading whitespace when .innerHTML is used leadingWhitespace div.firstChild.nodeType === 3, // Make sure that tbody elements aren t automatically inserted // IE will insert them into empty tables tbody !div.getElementsByTagName("tbody").length, // Make sure that link elements get serialized correctly by innerHTML // This requires a wrapper element in IE htmlSerialize !!div.getElementsByTagName("link").length, // Get the style information from getAttribute // (IE uses .cssText insted) style /red/.test( a.getAttribute("style") ), // Make sure that URLs aren t manipulated // (IE normalizes it by default) hrefNormalized a.getAttribute("href") === "/a", // Make sure that element opacity exists // (IE uses filter instead) // Use a regex to work around a WebKit issue. See #5145 opacity /^0.55$/.test( a.style.opacity ), // Verify style float existence // (IE uses styleFloat instead of cssFloat) cssFloat !!a.style.cssFloat, // Make sure that if no value is specified for a checkbox // that it defaults to "on". // (WebKit defaults to "" instead) checkOn div.getElementsByTagName("input")[0].value === "on", // Make sure that a selected-by-default option has a working selected property. // (WebKit defaults to false instead of true, IE too, if it s in an optgroup) optSelected opt.selected, // Will be defined later optDisabled false, checkClone false, scriptEval false, noCloneEvent true, boxModel null, inlineBlockNeedsLayout false, shrinkWrapBlocks false, reliableHiddenOffsets true }; // Make sure that the options inside disabled selects aren t marked as disabled // (WebKit marks them as diabled) select.disabled = true; jQuery.support.optDisabled = !opt.disabled; script.type = "text/javascript"; try { script.appendChild( document.createTextNode( "window." + id + "=1;" ) ); } catch(e) {} root.insertBefore( script, root.firstChild ); // Make sure that the execution of code works by injecting a script // tag with appendChild/createTextNode // (IE doesn t support this, fails, and uses .text instead) if ( window[ id ] ) { jQuery.support.scriptEval = true; delete window[ id ]; } root.removeChild( script ); if ( div.attachEvent div.fireEvent ) { div.attachEvent("onclick", function click() { // Cloning a node shouldn t copy over any // bound event handlers (IE does this) jQuery.support.noCloneEvent = false; div.detachEvent("onclick", click); }); div.cloneNode(true).fireEvent("onclick"); } div = document.createElement("div"); div.innerHTML = " input type= radio name= radiotest checked= checked / "; var fragment = document.createDocumentFragment(); fragment.appendChild( div.firstChild ); // WebKit doesn t clone checked state correctly in fragments jQuery.support.checkClone = fragment.cloneNode(true).cloneNode(true).lastChild.checked; // Figure out if the W3C box model works as expected // document.body must exist before we can do this jQuery(function() { var div = document.createElement("div"); div.style.width = div.style.paddingLeft = "1px"; document.body.appendChild( div ); jQuery.boxModel = jQuery.support.boxModel = div.offsetWidth === 2; if ( "zoom" in div.style ) { // Check if natively block-level elements act like inline-block // elements when setting their display to inline and giving // them layout // (IE 8 does this) div.style.display = "inline"; div.style.zoom = 1; jQuery.support.inlineBlockNeedsLayout = div.offsetWidth === 2; // Check if elements with layout shrink-wrap their children // (IE 6 does this) div.style.display = ""; div.innerHTML = " div style= width 4px; /div "; jQuery.support.shrinkWrapBlocks = div.offsetWidth !== 2; } div.innerHTML = " table tr td style= padding 0;display none /td td t /td /tr /table "; var tds = div.getElementsByTagName("td"); // Check if table cells still have offsetWidth/Height when they are set // to display none and there are still other visible table cells in a // table row; if so, offsetWidth/Height are not reliable for use when // determining if an element has been hidden directly using // display none (it is still safe to use offsets if a parent element is // hidden; don safety goggles and see bug #4512 for more information). // (only IE 8 fails this test) jQuery.support.reliableHiddenOffsets = tds[0].offsetHeight === 0; tds[0].style.display = ""; tds[1].style.display = "none"; // Check if empty table cells still have offsetWidth/Height // (IE 8 fail this test) jQuery.support.reliableHiddenOffsets = jQuery.support.reliableHiddenOffsets tds[0].offsetHeight === 0; div.innerHTML = ""; document.body.removeChild( div ).style.display = "none"; div = tds = null; }); // Technique from Juriy Zaytsev // http //thinkweb2.com/projects/prototype/detecting-event-support-without-browser-sniffing/ var eventSupported = function( eventName ) { var el = document.createElement("div"); eventName = "on" + eventName; var isSupported = (eventName in el); if ( !isSupported ) { el.setAttribute(eventName, "return;"); isSupported = typeof el[eventName] === "function"; } el = null; return isSupported; }; jQuery.support.submitBubbles = eventSupported("submit"); jQuery.support.changeBubbles = eventSupported("change"); // release memory in IE root = script = div = all = a = null; })(); jQuery.props = { "for" "htmlFor", "class" "className", readonly "readOnly", maxlength "maxLength", cellspacing "cellSpacing", rowspan "rowSpan", colspan "colSpan", tabindex "tabIndex", usemap "useMap", frameborder "frameBorder" }; var windowData = {}, rbrace = /^(? \{.*\}|\[.*\])$/; jQuery.extend({ cache {}, // Please use with caution uuid 0, // Unique for each copy of jQuery on the page expando "jQuery" + jQuery.now(), // The following elements throw uncatchable exceptions if you // attempt to add expando properties to them. noData { "embed" true, // Ban all objects except for Flash (which handle expandos) "object" "clsid D27CDB6E-AE6D-11cf-96B8-444553540000", "applet" true }, data function( elem, name, data ) { if ( !jQuery.acceptData( elem ) ) { return; } elem = elem == window ? windowData elem; var isNode = elem.nodeType, id = isNode ? elem[ jQuery.expando ] null, cache = jQuery.cache, thisCache; if ( isNode !id typeof name === "string" data === undefined ) { return; } // Get the data from the object directly if ( !isNode ) { cache = elem; // Compute a unique ID for the element } else if ( !id ) { elem[ jQuery.expando ] = id = ++jQuery.uuid; } // Avoid generating a new cache unless none exists and we // want to manipulate it. if ( typeof name === "object" ) { if ( isNode ) { cache[ id ] = jQuery.extend(cache[ id ], name); } else { jQuery.extend( cache, name ); } } else if ( isNode !cache[ id ] ) { cache[ id ] = {}; } thisCache = isNode ? cache[ id ] cache; // Prevent overriding the named cache with undefined values if ( data !== undefined ) { thisCache[ name ] = data; } return typeof name === "string" ? thisCache[ name ] thisCache; }, removeData function( elem, name ) { if ( !jQuery.acceptData( elem ) ) { return; } elem = elem == window ? windowData elem; var isNode = elem.nodeType, id = isNode ? elem[ jQuery.expando ] elem, cache = jQuery.cache, thisCache = isNode ? cache[ id ] id; // If we want to remove a specific section of the element s data if ( name ) { if ( thisCache ) { // Remove the section of cache data delete thisCache[ name ]; // If we ve removed all the data, remove the element s cache if ( isNode jQuery.isEmptyObject(thisCache) ) { jQuery.removeData( elem ); } } // Otherwise, we want to remove all of the element s data } else { if ( isNode jQuery.support.deleteExpando ) { delete elem[ jQuery.expando ]; } else if ( elem.removeAttribute ) { elem.removeAttribute( jQuery.expando ); // Completely remove the data cache } else if ( isNode ) { delete cache[ id ]; // Remove all fields from the object } else { for ( var n in elem ) { delete elem[ n ]; } } } }, // A method for determining if a DOM node can handle the data expando acceptData function( elem ) { if ( elem.nodeName ) { var match = jQuery.noData[ elem.nodeName.toLowerCase() ]; if ( match ) { return !(match === true || elem.getAttribute("classid") !== match); } } return true; } }); jQuery.fn.extend({ data function( key, value ) { if ( typeof key === "undefined" ) { return this.length ? jQuery.data( this[0] ) null; } else if ( typeof key === "object" ) { return this.each(function() { jQuery.data( this, key ); }); } var parts = key.split("."); parts[1] = parts[1] ? "." + parts[1] ""; if ( value === undefined ) { var data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]]); // Try to fetch any internally stored data first if ( data === undefined this.length ) { data = jQuery.data( this[0], key ); // If nothing was found internally, try to fetch any // data from the HTML5 data-* attribute if ( data === undefined this[0].nodeType === 1 ) { data = this[0].getAttribute( "data-" + key ); if ( typeof data === "string" ) { try { data = data === "true" ? true data === "false" ? false data === "null" ? null !jQuery.isNaN( data ) ? parseFloat( data ) rbrace.test( data ) ? jQuery.parseJSON( data ) data; } catch( e ) {} } else { data = undefined; } } } return data === undefined parts[1] ? this.data( parts[0] ) data; } else { return this.each(function() { var $this = jQuery( this ), args = [ parts[0], value ]; $this.triggerHandler( "setData" + parts[1] + "!", args ); jQuery.data( this, key, value ); $this.triggerHandler( "changeData" + parts[1] + "!", args ); }); } }, removeData function( key ) { return this.each(function() { jQuery.removeData( this, key ); }); } }); jQuery.extend({ queue function( elem, type, data ) { if ( !elem ) { return; } type = (type || "fx") + "queue"; var q = jQuery.data( elem, type ); // Speed up dequeue by getting out quickly if this is just a lookup if ( !data ) { return q || []; } if ( !q || jQuery.isArray(data) ) { q = jQuery.data( elem, type, jQuery.makeArray(data) ); } else { q.push( data ); } return q; }, dequeue function( elem, type ) { type = type || "fx"; var queue = jQuery.queue( elem, type ), fn = queue.shift(); // If the fx queue is dequeued, always remove the progress sentinel if ( fn === "inprogress" ) { fn = queue.shift(); } if ( fn ) { // Add a progress sentinel to prevent the fx queue from being // automatically dequeued if ( type === "fx" ) { queue.unshift("inprogress"); } fn.call(elem, function() { jQuery.dequeue(elem, type); }); } } }); jQuery.fn.extend({ queue function( type, data ) { if ( typeof type !== "string" ) { data = type; type = "fx"; } if ( data === undefined ) { return jQuery.queue( this[0], type ); } return this.each(function( i ) { var queue = jQuery.queue( this, type, data ); if ( type === "fx" queue[0] !== "inprogress" ) { jQuery.dequeue( this, type ); } }); }, dequeue function( type ) { return this.each(function() { jQuery.dequeue( this, type ); }); }, // Based off of the plugin by Clint Helfers, with permission. // http //blindsignals.com/index.php/2009/07/jquery-delay/ delay function( time, type ) { time = jQuery.fx ? jQuery.fx.speeds[time] || time time; type = type || "fx"; return this.queue( type, function() { var elem = this; setTimeout(function() { jQuery.dequeue( elem, type ); }, time ); }); }, clearQueue function( type ) { return this.queue( type || "fx", [] ); } }); var rclass = /[\n\t]/g, rspaces = /\s+/, rreturn = /\r/g, rspecialurl = /^(? href|src|style)$/, rtype = /^(? button|input)$/i, rfocusable = /^(? button|input|object|select|textarea)$/i, rclickable = /^a(? rea)?$/i, rradiocheck = /^(? radio|checkbox)$/i; jQuery.fn.extend({ attr function( name, value ) { return jQuery.access( this, name, value, true, jQuery.attr ); }, removeAttr function( name, fn ) { return this.each(function(){ jQuery.attr( this, name, "" ); if ( this.nodeType === 1 ) { this.removeAttribute( name ); } }); }, addClass function( value ) { if ( jQuery.isFunction(value) ) { return this.each(function(i) { var self = jQuery(this); self.addClass( value.call(this, i, self.attr("class")) ); }); } if ( value typeof value === "string" ) { var classNames = (value || "").split( rspaces ); for ( var i = 0, l = this.length; i l; i++ ) { var elem = this[i]; if ( elem.nodeType === 1 ) { if ( !elem.className ) { elem.className = value; } else { var className = " " + elem.className + " ", setClass = elem.className; for ( var c = 0, cl = classNames.length; c cl; c++ ) { if ( className.indexOf( " " + classNames[c] + " " ) 0 ) { setClass += " " + classNames[c]; } } elem.className = jQuery.trim( setClass ); } } } } return this; }, removeClass function( value ) { if ( jQuery.isFunction(value) ) { return this.each(function(i) { var self = jQuery(this); self.removeClass( value.call(this, i, self.attr("class")) ); }); } if ( (value typeof value === "string") || value === undefined ) { var classNames = (value || "").split( rspaces ); for ( var i = 0, l = this.length; i l; i++ ) { var elem = this[i]; if ( elem.nodeType === 1 elem.className ) { if ( value ) { var className = (" " + elem.className + " ").replace(rclass, " "); for ( var c = 0, cl = classNames.length; c cl; c++ ) { className = className.replace(" " + classNames[c] + " ", " "); } elem.className = jQuery.trim( className ); } else { elem.className = ""; } } } } return this; }, toggleClass function( value, stateVal ) { var type = typeof value, isBool = typeof stateVal === "boolean"; if ( jQuery.isFunction( value ) ) { return this.each(function(i) { var self = jQuery(this); self.toggleClass( value.call(this, i, self.attr("class"), stateVal), stateVal ); }); } return this.each(function() { if ( type === "string" ) { // toggle individual class names var className, i = 0, self = jQuery(this), state = stateVal, classNames = value.split( rspaces ); while ( (className = classNames[ i++ ]) ) { // check each className given, space seperated list state = isBool ? state !self.hasClass( className ); self[ state ? "addClass" "removeClass" ]( className ); } } else if ( type === "undefined" || type === "boolean" ) { if ( this.className ) { // store className if set jQuery.data( this, "__className__", this.className ); } // toggle whole className this.className = this.className || value === false ? "" jQuery.data( this, "__className__" ) || ""; } }); }, hasClass function( selector ) { var className = " " + selector + " "; for ( var i = 0, l = this.length; i l; i++ ) { if ( (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) -1 ) { return true; } } return false; }, val function( value ) { if ( !arguments.length ) { var elem = this[0]; if ( elem ) { if ( jQuery.nodeName( elem, "option" ) ) { // attributes.value is undefined in Blackberry 4.7 but // uses .value. See #6932 var val = elem.attributes.value; return !val || val.specified ? elem.value elem.text; } // We need to handle select boxes special if ( jQuery.nodeName( elem, "select" ) ) { var index = elem.selectedIndex, values = [], options = elem.options, one = elem.type === "select-one"; // Nothing was selected if ( index 0 ) { return null; } // Loop through all the selected options for ( var i = one ? index 0, max = one ? index + 1 options.length; i max; i++ ) { var option = options[ i ]; // Don t return options that are disabled or in a disabled optgroup if ( option.selected (jQuery.support.optDisabled ? !option.disabled option.getAttribute("disabled") === null) (!option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" )) ) { // Get the specific value for the option value = jQuery(option).val(); // We don t need an array for one selects if ( one ) { return value; } // Multi-Selects return an array values.push( value ); } } return values; } // Handle the case where in Webkit "" is returned instead of "on" if a value isn t specified if ( rradiocheck.test( elem.type ) !jQuery.support.checkOn ) { return elem.getAttribute("value") === null ? "on" elem.value; } // Everything else, we just grab the value return (elem.value || "").replace(rreturn, ""); } return undefined; } var isFunction = jQuery.isFunction(value); return this.each(function(i) { var self = jQuery(this), val = value; if ( this.nodeType !== 1 ) { return; } if ( isFunction ) { val = value.call(this, i, self.val()); } // Treat null/undefined as ""; convert numbers to string if ( val == null ) { val = ""; } else if ( typeof val === "number" ) { val += ""; } else if ( jQuery.isArray(val) ) { val = jQuery.map(val, function (value) { return value == null ? "" value + ""; }); } if ( jQuery.isArray(val) rradiocheck.test( this.type ) ) { this.checked = jQuery.inArray( self.val(), val ) = 0; } else if ( jQuery.nodeName( this, "select" ) ) { var values = jQuery.makeArray(val); jQuery( "option", this ).each(function() { this.selected = jQuery.inArray( jQuery(this).val(), values ) = 0; }); if ( !values.length ) { this.selectedIndex = -1; } } else { this.value = val; } }); } }); jQuery.extend({ attrFn { val true, css true, html true, text true, data true, width true, height true, offset true }, attr function( elem, name, value, pass ) { // don t set attributes on text and comment nodes if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 ) { return undefined; } if ( pass name in jQuery.attrFn ) { return jQuery(elem)[name](value); } var notxml = elem.nodeType !== 1 || !jQuery.isXMLDoc( elem ), // Whether we are setting (or getting) set = value !== undefined; // Try to normalize/fix the name name = notxml jQuery.props[ name ] || name; // Only do all the following if this is a node (faster for style) if ( elem.nodeType === 1 ) { // These attributes require special treatment var special = rspecialurl.test( name ); // Safari mis-reports the default selected property of an option // Accessing the parent s selectedIndex property fixes it if ( name === "selected" !jQuery.support.optSelected ) { var parent = elem.parentNode; if ( parent ) { parent.selectedIndex; // Make sure that it also works with optgroups, see #5701 if ( parent.parentNode ) { parent.parentNode.selectedIndex; } } } // If applicable, access the attribute via the DOM 0 way // in checks fail in Blackberry 4.7 #6931 if ( (name in elem || elem[ name ] !== undefined) notxml !special ) { if ( set ) { // We can t allow the type property to be changed (since it causes problems in IE) if ( name === "type" rtype.test( elem.nodeName ) elem.parentNode ) { jQuery.error( "type property can t be changed" ); } if ( value === null ) { if ( elem.nodeType === 1 ) { elem.removeAttribute( name ); } } else { elem[ name ] = value; } } // browsers index elements by id/name on forms, give priority to attributes. if ( jQuery.nodeName( elem, "form" ) elem.getAttributeNode(name) ) { return elem.getAttributeNode( name ).nodeValue; } // elem.tabIndex doesn t always return the correct value when it hasn t been explicitly set // http //fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ if ( name === "tabIndex" ) { var attributeNode = elem.getAttributeNode( "tabIndex" ); return attributeNode attributeNode.specified ? attributeNode.value rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) elem.href ? 0 undefined; } return elem[ name ]; } if ( !jQuery.support.style notxml name === "style" ) { if ( set ) { elem.style.cssText = "" + value; } return elem.style.cssText; } if ( set ) { // convert the value to a string (all browsers do this but IE) see #1070 elem.setAttribute( name, "" + value ); } // Ensure that missing attributes return undefined // Blackberry 4.7 returns "" from getAttribute #6938 if ( !elem.attributes[ name ] (elem.hasAttribute !elem.hasAttribute( name )) ) { return undefined; } var attr = !jQuery.support.hrefNormalized notxml special ? // Some attributes require a special call on IE elem.getAttribute( name, 2 ) elem.getAttribute( name ); // Non-existent attributes return null, we normalize to undefined return attr === null ? undefined attr; } } }); var rnamespaces = /\.(.*)$/, rformElems = /^(? textarea|input|select)$/i, rperiod = /\./g, rspace = / /g, rescape = /[^\w\s.|`]/g, fcleanup = function( nm ) { return nm.replace(rescape, "\\$ "); }, focusCounts = { focusin 0, focusout 0 }; /* * A number of helper functions used for managing events. * Many of the ideas behind this code originated from * Dean Edwards addEvent library. */ jQuery.event = { // Bind an event to an element // Original by Dean Edwards add function( elem, types, handler, data ) { if ( elem.nodeType === 3 || elem.nodeType === 8 ) { return; } // For whatever reason, IE has trouble passing the window object // around, causing it to be cloned in the process if ( jQuery.isWindow( elem ) ( elem !== window !elem.frameElement ) ) { elem = window; } if ( handler === false ) { handler = returnFalse; } var handleObjIn, handleObj; if ( handler.handler ) { handleObjIn = handler; handler = handleObjIn.handler; } // Make sure that the function being executed has a unique ID if ( !handler.guid ) { handler.guid = jQuery.guid++; } // Init the element s event structure var elemData = jQuery.data( elem ); // If no elemData is found then we must be trying to bind to one of the // banned noData elements if ( !elemData ) { return; } // Use a key less likely to result in collisions for plain JS objects. // Fixes bug #7150. var eventKey = elem.nodeType ? "events" "__events__", events = elemData[ eventKey ], eventHandle = elemData.handle; if ( typeof events === "function" ) { // On plain objects events is a fn that holds the the data // which prevents this data from being JSON serialized // the function does not need to be called, it just contains the data eventHandle = events.handle; events = events.events; } else if ( !events ) { if ( !elem.nodeType ) { // On plain objects, create a fn that acts as the holder // of the values to avoid JSON serialization of event data elemData[ eventKey ] = elemData = function(){}; } elemData.events = events = {}; } if ( !eventHandle ) { elemData.handle = eventHandle = function() { // Handle the second event of a trigger and when // an event is called after a page has unloaded return typeof jQuery !== "undefined" !jQuery.event.triggered ? jQuery.event.handle.apply( eventHandle.elem, arguments ) undefined; }; } // Add elem as a property of the handle function // This is to prevent a memory leak with non-native events in IE. eventHandle.elem = elem; // Handle multiple events separated by a space // jQuery(...).bind("mouseover mouseout", fn); types = types.split(" "); var type, i = 0, namespaces; while ( (type = types[ i++ ]) ) { handleObj = handleObjIn ? jQuery.extend({}, handleObjIn) { handler handler, data data }; // Namespaced event handlers if ( type.indexOf(".") -1 ) { namespaces = type.split("."); type = namespaces.shift(); handleObj.namespace = namespaces.slice(0).sort().join("."); } else { namespaces = []; handleObj.namespace = ""; } handleObj.type = type; if ( !handleObj.guid ) { handleObj.guid = handler.guid; } // Get the current list of functions bound to this event var handlers = events[ type ], special = jQuery.event.special[ type ] || {}; // Init the event handler queue if ( !handlers ) { handlers = events[ type ] = []; // Check for a special event handler // Only use addEventListener/attachEvent if the special // events handler returns false if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) { // Bind the global event handler to the element if ( elem.addEventListener ) { elem.addEventListener( type, eventHandle, false ); } else if ( elem.attachEvent ) { elem.attachEvent( "on" + type, eventHandle ); } } } if ( special.add ) { special.add.call( elem, handleObj ); if ( !handleObj.handler.guid ) { handleObj.handler.guid = handler.guid; } } // Add the function to the element s handler list handlers.push( handleObj ); // Keep track of which events have been used, for global triggering jQuery.event.global[ type ] = true; } // Nullify elem to prevent memory leaks in IE elem = null; }, global {}, // Detach an event or set of events from an element remove function( elem, types, handler, pos ) { // don t do events on text and comment nodes if ( elem.nodeType === 3 || elem.nodeType === 8 ) { return; } if ( handler === false ) { handler = returnFalse; } var ret, type, fn, j, i = 0, all, namespaces, namespace, special, eventType, handleObj, origType, eventKey = elem.nodeType ? "events" "__events__", elemData = jQuery.data( elem ), events = elemData elemData[ eventKey ]; if ( !elemData || !events ) { return; } if ( typeof events === "function" ) { elemData = events; events = events.events; } // types is actually an event object here if ( types types.type ) { handler = types.handler; types = types.type; } // Unbind all events for the element if ( !types || typeof types === "string" types.charAt(0) === "." ) { types = types || ""; for ( type in events ) { jQuery.event.remove( elem, type + types ); } return; } // Handle multiple events separated by a space // jQuery(...).unbind("mouseover mouseout", fn); types = types.split(" "); while ( (type = types[ i++ ]) ) { origType = type; handleObj = null; all = type.indexOf(".") 0; namespaces = []; if ( !all ) { // Namespaced event handlers namespaces = type.split("."); type = namespaces.shift(); namespace = new RegExp("(^|\\.)" + jQuery.map( namespaces.slice(0).sort(), fcleanup ).join("\\.(? .*\\.)?") + "(\\.|$)"); } eventType = events[ type ]; if ( !eventType ) { continue; } if ( !handler ) { for ( j = 0; j eventType.length; j++ ) { handleObj = eventType[ j ]; if ( all || namespace.test( handleObj.namespace ) ) { jQuery.event.remove( elem, origType, handleObj.handler, j ); eventType.splice( j--, 1 ); } } continue; } special = jQuery.event.special[ type ] || {}; for ( j = pos || 0; j eventType.length; j++ ) { handleObj = eventType[ j ]; if ( handler.guid === handleObj.guid ) { // remove the given handler for the given type if ( all || namespace.test( handleObj.namespace ) ) { if ( pos == null ) { eventType.splice( j--, 1 ); } if ( special.remove ) { special.remove.call( elem, handleObj ); } } if ( pos != null ) { break; } } } // remove generic event handler if no more handlers exist if ( eventType.length === 0 || pos != null eventType.length === 1 ) { if ( !special.teardown || special.teardown.call( elem, namespaces ) === false ) { jQuery.removeEvent( elem, type, elemData.handle ); } ret = null; delete events[ type ]; } } // Remove the expando if it s no longer used if ( jQuery.isEmptyObject( events ) ) { var handle = elemData.handle; if ( handle ) { handle.elem = null; } delete elemData.events; delete elemData.handle; if ( typeof elemData === "function" ) { jQuery.removeData( elem, eventKey ); } else if ( jQuery.isEmptyObject( elemData ) ) { jQuery.removeData( elem ); } } }, // bubbling is internal trigger function( event, data, elem /*, bubbling */ ) { // Event object or event type var type = event.type || event, bubbling = arguments[3]; if ( !bubbling ) { event = typeof event === "object" ? // jQuery.Event object event[ jQuery.expando ] ? event // Object literal jQuery.extend( jQuery.Event(type), event ) // Just the event type (string) jQuery.Event(type); if ( type.indexOf("!") = 0 ) { event.type = type = type.slice(0, -1); event.exclusive = true; } // Handle a global trigger if ( !elem ) { // Don t bubble custom events when global (to avoid too much overhead) event.stopPropagation(); // Only trigger if we ve ever bound an event for it if ( jQuery.event.global[ type ] ) { jQuery.each( jQuery.cache, function() { if ( this.events this.events[type] ) { jQuery.event.trigger( event, data, this.handle.elem ); } }); } } // Handle triggering a single element // don t do events on text and comment nodes if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 ) { return undefined; } // Clean up in case it is reused event.result = undefined; event.target = elem; // Clone the incoming data, if any data = jQuery.makeArray( data ); data.unshift( event ); } event.currentTarget = elem; // Trigger the event, it is assumed that "handle" is a function var handle = elem.nodeType ? jQuery.data( elem, "handle" ) (jQuery.data( elem, "__events__" ) || {}).handle; if ( handle ) { handle.apply( elem, data ); } var parent = elem.parentNode || elem.ownerDocument; // Trigger an inline bound script try { if ( !(elem elem.nodeName jQuery.noData[elem.nodeName.toLowerCase()]) ) { if ( elem[ "on" + type ] elem[ "on" + type ].apply( elem, data ) === false ) { event.result = false; event.preventDefault(); } } // prevent IE from throwing an error for some elements with some event types, see #3533 } catch (inlineError) {} if ( !event.isPropagationStopped() parent ) { jQuery.event.trigger( event, data, parent, true ); } else if ( !event.isDefaultPrevented() ) { var target = event.target, old, targetType = type.replace(rnamespaces, ""), isClick = jQuery.nodeName(target, "a") targetType === "click", special = jQuery.event.special[ targetType ] || {}; if ( (!special._default || special._default.call( elem, event ) === false) !isClick !(target target.nodeName jQuery.noData[target.nodeName.toLowerCase()]) ) { try { if ( target[ targetType ] ) { // Make sure that we don t accidentally re-trigger the onFOO events old = target[ "on" + targetType ]; if ( old ) { target[ "on" + targetType ] = null; } jQuery.event.triggered = true; target[ targetType ](); } // prevent IE from throwing an error for some elements with some event types, see #3533 } catch (triggerError) {} if ( old ) { target[ "on" + targetType ] = old; } jQuery.event.triggered = false; } } }, handle function( event ) { var all, handlers, namespaces, namespace_sort = [], namespace_re, events, args = jQuery.makeArray( arguments ); event = args[0] = jQuery.event.fix( event || window.event ); event.currentTarget = this; // Namespaced event handlers all = event.type.indexOf(".") 0 !event.exclusive; if ( !all ) { namespaces = event.type.split("."); event.type = namespaces.shift(); namespace_sort = namespaces.slice(0).sort(); namespace_re = new RegExp("(^|\\.)" + namespace_sort.join("\\.(? .*\\.)?") + "(\\.|$)"); } event.namespace = event.namespace || namespace_sort.join("."); events = jQuery.data(this, this.nodeType ? "events" "__events__"); if ( typeof events === "function" ) { events = events.events; } handlers = (events || {})[ event.type ]; if ( events handlers ) { // Clone the handlers to prevent manipulation handlers = handlers.slice(0); for ( var j = 0, l = handlers.length; j l; j++ ) { var handleObj = handlers[ j ]; // Filter the functions by class if ( all || namespace_re.test( handleObj.namespace ) ) { // Pass in a reference to the handler function itself // So that we can later remove it event.handler = handleObj.handler; event.data = handleObj.data; event.handleObj = handleObj; var ret = handleObj.handler.apply( this, args ); if ( ret !== undefined ) { event.result = ret; if ( ret === false ) { event.preventDefault(); event.stopPropagation(); } } if ( event.isImmediatePropagationStopped() ) { break; } } } } return event.result; }, props "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "), fix function( event ) { if ( event[ jQuery.expando ] ) { return event; } // store a copy of the original event object // and "clone" to set read-only properties var originalEvent = event; event = jQuery.Event( originalEvent ); for ( var i = this.props.length, prop; i; ) { prop = this.props[ --i ]; event[ prop ] = originalEvent[ prop ]; } // Fix target property, if necessary if ( !event.target ) { event.target = event.srcElement || document; // Fixes #1925 where srcElement might not be defined either } // check if target is a textnode (safari) if ( event.target.nodeType === 3 ) { event.target = event.target.parentNode; } // Add relatedTarget, if necessary if ( !event.relatedTarget event.fromElement ) { event.relatedTarget = event.fromElement === event.target ? event.toElement event.fromElement; } // Calculate pageX/Y if missing and clientX/Y available if ( event.pageX == null event.clientX != null ) { var doc = document.documentElement, body = document.body; event.pageX = event.clientX + (doc doc.scrollLeft || body body.scrollLeft || 0) - (doc doc.clientLeft || body body.clientLeft || 0); event.pageY = event.clientY + (doc doc.scrollTop || body body.scrollTop || 0) - (doc doc.clientTop || body body.clientTop || 0); } // Add which for key events if ( event.which == null (event.charCode != null || event.keyCode != null) ) { event.which = event.charCode != null ? event.charCode event.keyCode; } // Add metaKey to non-Mac browsers (use ctrl for PC s and Meta for Macs) if ( !event.metaKey event.ctrlKey ) { event.metaKey = event.ctrlKey; } // Add which for click 1 === left; 2 === middle; 3 === right // Note button is not normalized, so don t use it if ( !event.which event.button !== undefined ) { event.which = (event.button 1 ? 1 ( event.button 2 ? 3 ( event.button 4 ? 2 0 ) )); } return event; }, // Deprecated, use jQuery.guid instead guid 1E8, // Deprecated, use jQuery.proxy instead proxy jQuery.proxy, special { ready { // Make sure the ready event is setup setup jQuery.bindReady, teardown jQuery.noop }, live { add function( handleObj ) { jQuery.event.add( this, liveConvert( handleObj.origType, handleObj.selector ), jQuery.extend({}, handleObj, {handler liveHandler, guid handleObj.handler.guid}) ); }, remove function( handleObj ) { jQuery.event.remove( this, liveConvert( handleObj.origType, handleObj.selector ), handleObj ); } }, beforeunload { setup function( data, namespaces, eventHandle ) { // We only want to do this special case on windows if ( jQuery.isWindow( this ) ) { this.onbeforeunload = eventHandle; } }, teardown function( namespaces, eventHandle ) { if ( this.onbeforeunload === eventHandle ) { this.onbeforeunload = null; } } } } }; jQuery.removeEvent = document.removeEventListener ? function( elem, type, handle ) { if ( elem.removeEventListener ) { elem.removeEventListener( type, handle, false ); } } function( elem, type, handle ) { if ( elem.detachEvent ) { elem.detachEvent( "on" + type, handle ); } }; jQuery.Event = function( src ) { // Allow instantiation without the new keyword if ( !this.preventDefault ) { return new jQuery.Event( src ); } // Event object if ( src src.type ) { this.originalEvent = src; this.type = src.type; // Event type } else { this.type = src; } // timeStamp is buggy for some events on Firefox(#3843) // So we won t rely on the native value this.timeStamp = jQuery.now(); // Mark it as fixed this[ jQuery.expando ] = true; }; function returnFalse() { return false; } function returnTrue() { return true; } // jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding // http //www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html jQuery.Event.prototype = { preventDefault function() { this.isDefaultPrevented = returnTrue; var e = this.originalEvent; if ( !e ) { return; } // if preventDefault exists run it on the original event if ( e.preventDefault ) { e.preventDefault(); // otherwise set the returnValue property of the original event to false (IE) } else { e.returnValue = false; } }, stopPropagation function() { this.isPropagationStopped = returnTrue; var e = this.originalEvent; if ( !e ) { return; } // if stopPropagation exists run it on the original event if ( e.stopPropagation ) { e.stopPropagation(); } // otherwise set the cancelBubble property of the original event to true (IE) e.cancelBubble = true; }, stopImmediatePropagation function() { this.isImmediatePropagationStopped = returnTrue; this.stopPropagation(); }, isDefaultPrevented returnFalse, isPropagationStopped returnFalse, isImmediatePropagationStopped returnFalse }; // Checks if an event happened on an element within another element // Used in jQuery.event.special.mouseenter and mouseleave handlers var withinElement = function( event ) { // Check if mouse(over|out) are still within the same parent element var parent = event.relatedTarget; // Firefox sometimes assigns relatedTarget a XUL element // which we cannot access the parentNode property of try { // Traverse up the tree while ( parent parent !== this ) { parent = parent.parentNode; } if ( parent !== this ) { // set the correct event type event.type = event.data; // handle event if we actually just moused on to a non sub-element jQuery.event.handle.apply( this, arguments ); } // assuming we ve left the element since we most likely mousedover a xul element } catch(e) { } }, // In case of event delegation, we only need to rename the event.type, // liveHandler will take care of the rest. delegate = function( event ) { event.type = event.data; jQuery.event.handle.apply( this, arguments ); }; // Create mouseenter and mouseleave events jQuery.each({ mouseenter "mouseover", mouseleave "mouseout" }, function( orig, fix ) { jQuery.event.special[ orig ] = { setup function( data ) { jQuery.event.add( this, fix, data data.selector ? delegate withinElement, orig ); }, teardown function( data ) { jQuery.event.remove( this, fix, data data.selector ? delegate withinElement ); } }; }); // submit delegation if ( !jQuery.support.submitBubbles ) { jQuery.event.special.submit = { setup function( data, namespaces ) { if ( this.nodeName.toLowerCase() !== "form" ) { jQuery.event.add(this, "click.specialSubmit", function( e ) { var elem = e.target, type = elem.type; if ( (type === "submit" || type === "image") jQuery( elem ).closest("form").length ) { e.liveFired = undefined; return trigger( "submit", this, arguments ); } }); jQuery.event.add(this, "keypress.specialSubmit", function( e ) { var elem = e.target, type = elem.type; if ( (type === "text" || type === "password") jQuery( elem ).closest("form").length e.keyCode === 13 ) { e.liveFired = undefined; return trigger( "submit", this, arguments ); } }); } else { return false; } }, teardown function( namespaces ) { jQuery.event.remove( this, ".specialSubmit" ); } }; } // change delegation, happens here so we have bind. if ( !jQuery.support.changeBubbles ) { var changeFilters, getVal = function( elem ) { var type = elem.type, val = elem.value; if ( type === "radio" || type === "checkbox" ) { val = elem.checked; } else if ( type === "select-multiple" ) { val = elem.selectedIndex -1 ? jQuery.map( elem.options, function( elem ) { return elem.selected; }).join("-") ""; } else if ( elem.nodeName.toLowerCase() === "select" ) { val = elem.selectedIndex; } return val; }, testChange = function testChange( e ) { var elem = e.target, data, val; if ( !rformElems.test( elem.nodeName ) || elem.readOnly ) { return; } data = jQuery.data( elem, "_change_data" ); val = getVal(elem); // the current data will be also retrieved by beforeactivate if ( e.type !== "focusout" || elem.type !== "radio" ) { jQuery.data( elem, "_change_data", val ); } if ( data === undefined || val === data ) { return; } if ( data != null || val ) { e.type = "change"; e.liveFired = undefined; return jQuery.event.trigger( e, arguments[1], elem ); } }; jQuery.event.special.change = { filters { focusout testChange, beforedeactivate testChange, click function( e ) { var elem = e.target, type = elem.type; if ( type === "radio" || type === "checkbox" || elem.nodeName.toLowerCase() === "select" ) { return testChange.call( this, e ); } }, // Change has to be called before submit // Keydown will be called before keypress, which is used in submit-event delegation keydown function( e ) { var elem = e.target, type = elem.type; if ( (e.keyCode === 13 elem.nodeName.toLowerCase() !== "textarea") || (e.keyCode === 32 (type === "checkbox" || type === "radio")) || type === "select-multiple" ) { return testChange.call( this, e ); } }, // Beforeactivate happens also before the previous element is blurred // with this event you can t trigger a change event, but you can store // information beforeactivate function( e ) { var elem = e.target; jQuery.data( elem, "_change_data", getVal(elem) ); } }, setup function( data, namespaces ) { if ( this.type === "file" ) { return false; } for ( var type in changeFilters ) { jQuery.event.add( this, type + ".specialChange", changeFilters[type] ); } return rformElems.test( this.nodeName ); }, teardown function( namespaces ) { jQuery.event.remove( this, ".specialChange" ); return rformElems.test( this.nodeName ); } }; changeFilters = jQuery.event.special.change.filters; // Handle when the input is .focus() d changeFilters.focus = changeFilters.beforeactivate; } function trigger( type, elem, args ) { args[0].type = type; return jQuery.event.handle.apply( elem, args ); } // Create "bubbling" focus and blur events if ( document.addEventListener ) { jQuery.each({ focus "focusin", blur "focusout" }, function( orig, fix ) { jQuery.event.special[ fix ] = { setup function() { if ( focusCounts[fix]++ === 0 ) { document.addEventListener( orig, handler, true ); } }, teardown function() { if ( --focusCounts[fix] === 0 ) { document.removeEventListener( orig, handler, true ); } } }; function handler( e ) { e = jQuery.event.fix( e ); e.type = fix; return jQuery.event.trigger( e, null, e.target ); } }); } jQuery.each(["bind", "one"], function( i, name ) { jQuery.fn[ name ] = function( type, data, fn ) { // Handle object literals if ( typeof type === "object" ) { for ( var key in type ) { this[ name ](key, data, type[key], fn); } return this; } if ( jQuery.isFunction( data ) || data === false ) { fn = data; data = undefined; } var handler = name === "one" ? jQuery.proxy( fn, function( event ) { jQuery( this ).unbind( event, handler ); return fn.apply( this, arguments ); }) fn; if ( type === "unload" name !== "one" ) { this.one( type, data, fn ); } else { for ( var i = 0, l = this.length; i l; i++ ) { jQuery.event.add( this[i], type, handler, data ); } } return this; }; }); jQuery.fn.extend({ unbind function( type, fn ) { // Handle object literals if ( typeof type === "object" !type.preventDefault ) { for ( var key in type ) { this.unbind(key, type[key]); } } else { for ( var i = 0, l = this.length; i l; i++ ) { jQuery.event.remove( this[i], type, fn ); } } return this; }, delegate function( selector, types, data, fn ) { return this.live( types, data, fn, selector ); }, undelegate function( selector, types, fn ) { if ( arguments.length === 0 ) { return this.unbind( "live" ); } else { return this.die( types, null, fn, selector ); } }, trigger function( type, data ) { return this.each(function() { jQuery.event.trigger( type, data, this ); }); }, triggerHandler function( type, data ) { if ( this[0] ) { var event = jQuery.Event( type ); event.preventDefault(); event.stopPropagation(); jQuery.event.trigger( event, data, this[0] ); return event.result; } }, toggle function( fn ) { // Save reference to arguments for access in closure var args = arguments, i = 1; // link all the functions, so any of them can unbind this click handler while ( i args.length ) { jQuery.proxy( fn, args[ i++ ] ); } return this.click( jQuery.proxy( fn, function( event ) { // Figure out which function to execute var lastToggle = ( jQuery.data( this, "lastToggle" + fn.guid ) || 0 ) % i; jQuery.data( this, "lastToggle" + fn.guid, lastToggle + 1 ); // Make sure that clicks stop event.preventDefault(); // and execute the function return args[ lastToggle ].apply( this, arguments ) || false; })); }, hover function( fnOver, fnOut ) { return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver ); } }); var liveMap = { focus "focusin", blur "focusout", mouseenter "mouseover", mouseleave "mouseout" }; jQuery.each(["live", "die"], function( i, name ) { jQuery.fn[ name ] = function( types, data, fn, origSelector /* Internal Use Only */ ) { var type, i = 0, match, namespaces, preType, selector = origSelector || this.selector, context = origSelector ? this jQuery( this.context ); if ( typeof types === "object" !types.preventDefault ) { for ( var key in types ) { context[ name ]( key, data, types[key], selector ); } return this; } if ( jQuery.isFunction( data ) ) { fn = data; data = undefined; } types = (types || "").split(" "); while ( (type = types[ i++ ]) != null ) { match = rnamespaces.exec( type ); namespaces = ""; if ( match ) { namespaces = match[0]; type = type.replace( rnamespaces, "" ); } if ( type === "hover" ) { types.push( "mouseenter" + namespaces, "mouseleave" + namespaces ); continue; } preType = type; if ( type === "focus" || type === "blur" ) { types.push( liveMap[ type ] + namespaces ); type = type + namespaces; } else { type = (liveMap[ type ] || type) + namespaces; } if ( name === "live" ) { // bind live handler for ( var j = 0, l = context.length; j l; j++ ) { jQuery.event.add( context[j], "live." + liveConvert( type, selector ), { data data, selector selector, handler fn, origType type, origHandler fn, preType preType } ); } } else { // unbind live handler context.unbind( "live." + liveConvert( type, selector ), fn ); } } return this; }; }); function liveHandler( event ) { var stop, maxLevel, elems = [], selectors = [], related, match, handleObj, elem, j, i, l, data, close, namespace, ret, events = jQuery.data( this, this.nodeType ? "events" "__events__" ); if ( typeof events === "function" ) { events = events.events; } // Make sure we avoid non-left-click bubbling in Firefox (#3861) if ( event.liveFired === this || !events || !events.live || event.button event.type === "click" ) { return; } if ( event.namespace ) { namespace = new RegExp("(^|\\.)" + event.namespace.split(".").join("\\.(? .*\\.)?") + "(\\.|$)"); } event.liveFired = this; var live = events.live.slice(0); for ( j = 0; j live.length; j++ ) { handleObj = live[j]; if ( handleObj.origType.replace( rnamespaces, "" ) === event.type ) { selectors.push( handleObj.selector ); } else { live.splice( j--, 1 ); } } match = jQuery( event.target ).closest( selectors, event.currentTarget ); for ( i = 0, l = match.length; i l; i++ ) { close = match[i]; for ( j = 0; j live.length; j++ ) { handleObj = live[j]; if ( close.selector === handleObj.selector (!namespace || namespace.test( handleObj.namespace )) ) { elem = close.elem; related = null; // Those two events require additional checking if ( handleObj.preType === "mouseenter" || handleObj.preType === "mouseleave" ) { event.type = handleObj.preType; related = jQuery( event.relatedTarget ).closest( handleObj.selector )[0]; } if ( !related || related !== elem ) { elems.push({ elem elem, handleObj handleObj, level close.level }); } } } } for ( i = 0, l = elems.length; i l; i++ ) { match = elems[i]; if ( maxLevel match.level maxLevel ) { break; } event.currentTarget = match.elem; event.data = match.handleObj.data; event.handleObj = match.handleObj; ret = match.handleObj.origHandler.apply( match.elem, arguments ); if ( ret === false || event.isPropagationStopped() ) { maxLevel = match.level; if ( ret === false ) { stop = false; } } } return stop; } function liveConvert( type, selector ) { return (type type !== "*" ? type + "." "") + selector.replace(rperiod, "`").replace(rspace, " "); } jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " + "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + "change select submit keydown keypress keyup error").split(" "), function( i, name ) { // Handle event binding jQuery.fn[ name ] = function( data, fn ) { if ( fn == null ) { fn = data; data = null; } return arguments.length 0 ? this.bind( name, data, fn ) this.trigger( name ); }; if ( jQuery.attrFn ) { jQuery.attrFn[ name ] = true; } }); // Prevent memory leaks in IE // Window isn t included so as not to unbind existing unload events // More info // - http //isaacschlueter.com/2006/10/msie-memory-leaks/ if ( window.attachEvent !window.addEventListener ) { jQuery(window).bind("unload", function() { for ( var id in jQuery.cache ) { if ( jQuery.cache[ id ].handle ) { // Try/Catch is to handle iframes being unloaded, see #4280 try { jQuery.event.remove( jQuery.cache[ id ].handle.elem ); } catch(e) {} } } }); } /*! * Sizzle CSS Selector Engine - v1.0 * Copyright 2009, The Dojo Foundation * Released under the MIT, BSD, and GPL Licenses. * More information http //sizzlejs.com/ */ (function(){ var chunker = /((? \((? \([^()]+\)|[^()]+)+\)|\[(? \[[^\[\]]*\]|[ "][^ "]*[ "]|[^\[\] "]+)+\]|\\.|[^ +~,(\[\\]+)+|[ +~])(\s*,\s*)?((? .|\r|\n)*)/g, done = 0, toString = Object.prototype.toString, hasDuplicate = false, baseHasDuplicate = true; // Here we check if the JavaScript engine is using some sort of // optimization where it does not always call our comparision // function. If that is the case, discard the hasDuplicate value. // Thus far that includes Google Chrome. [0, 0].sort(function(){ baseHasDuplicate = false; return 0; }); var Sizzle = function(selector, context, results, seed) { results = results || []; context = context || document; var origContext = context; if ( context.nodeType !== 1 context.nodeType !== 9 ) { return []; } if ( !selector || typeof selector !== "string" ) { return results; } var parts = [], m, set, checkSet, extra, prune = true, contextXML = Sizzle.isXML(context), soFar = selector, ret, cur, pop, i; // Reset the position of the chunker regexp (start from head) do { chunker.exec(""); m = chunker.exec(soFar); if ( m ) { soFar = m[3]; parts.push( m[1] ); if ( m[2] ) { extra = m[3]; break; } } } while ( m ); if ( parts.length 1 origPOS.exec( selector ) ) { if ( parts.length === 2 Expr.relative[ parts[0] ] ) { set = posProcess( parts[0] + parts[1], context ); } else { set = Expr.relative[ parts[0] ] ? [ context ] Sizzle( parts.shift(), context ); while ( parts.length ) { selector = parts.shift(); if ( Expr.relative[ selector ] ) { selector += parts.shift(); } set = posProcess( selector, set ); } } } else { // Take a shortcut and set the context if the root selector is an ID // (but not if it ll be faster if the inner selector is an ID) if ( !seed parts.length 1 context.nodeType === 9 !contextXML Expr.match.ID.test(parts[0]) !Expr.match.ID.test(parts[parts.length - 1]) ) { ret = Sizzle.find( parts.shift(), context, contextXML ); context = ret.expr ? Sizzle.filter( ret.expr, ret.set )[0] ret.set[0]; } if ( context ) { ret = seed ? { expr parts.pop(), set makeArray(seed) } Sizzle.find( parts.pop(), parts.length === 1 (parts[0] === "~" || parts[0] === "+") context.parentNode ? context.parentNode context, contextXML ); set = ret.expr ? Sizzle.filter( ret.expr, ret.set ) ret.set; if ( parts.length 0 ) { checkSet = makeArray(set); } else { prune = false; } while ( parts.length ) { cur = parts.pop(); pop = cur; if ( !Expr.relative[ cur ] ) { cur = ""; } else { pop = parts.pop(); } if ( pop == null ) { pop = context; } Expr.relative[ cur ]( checkSet, pop, contextXML ); } } else { checkSet = parts = []; } } if ( !checkSet ) { checkSet = set; } if ( !checkSet ) { Sizzle.error( cur || selector ); } if ( toString.call(checkSet) === "[object Array]" ) { if ( !prune ) { results.push.apply( results, checkSet ); } else if ( context context.nodeType === 1 ) { for ( i = 0; checkSet[i] != null; i++ ) { if ( checkSet[i] (checkSet[i] === true || checkSet[i].nodeType === 1 Sizzle.contains(context, checkSet[i])) ) { results.push( set[i] ); } } } else { for ( i = 0; checkSet[i] != null; i++ ) { if ( checkSet[i] checkSet[i].nodeType === 1 ) { results.push( set[i] ); } } } } else { makeArray( checkSet, results ); } if ( extra ) { Sizzle( extra, origContext, results, seed ); Sizzle.uniqueSort( results ); } return results; }; Sizzle.uniqueSort = function(results){ if ( sortOrder ) { hasDuplicate = baseHasDuplicate; results.sort(sortOrder); if ( hasDuplicate ) { for ( var i = 1; i results.length; i++ ) { if ( results[i] === results[i-1] ) { results.splice(i--, 1); } } } } return results; }; Sizzle.matches = function(expr, set){ return Sizzle(expr, null, null, set); }; Sizzle.matchesSelector = function(node, expr){ return Sizzle(expr, null, null, [node]).length 0; }; Sizzle.find = function(expr, context, isXML){ var set; if ( !expr ) { return []; } for ( var i = 0, l = Expr.order.length; i l; i++ ) { var type = Expr.order[i], match; if ( (match = Expr.leftMatch[ type ].exec( expr )) ) { var left = match[1]; match.splice(1,1); if ( left.substr( left.length - 1 ) !== "\\" ) { match[1] = (match[1] || "").replace(/\\/g, ""); set = Expr.find[ type ]( match, context, isXML ); if ( set != null ) { expr = expr.replace( Expr.match[ type ], "" ); break; } } } } if ( !set ) { set = context.getElementsByTagName("*"); } return {set set, expr expr}; }; Sizzle.filter = function(expr, set, inplace, not){ var old = expr, result = [], curLoop = set, match, anyFound, isXMLFilter = set set[0] Sizzle.isXML(set[0]); while ( expr set.length ) { for ( var type in Expr.filter ) { if ( (match = Expr.leftMatch[ type ].exec( expr )) != null match[2] ) { var filter = Expr.filter[ type ], found, item, left = match[1]; anyFound = false; match.splice(1,1); if ( left.substr( left.length - 1 ) === "\\" ) { continue; } if ( curLoop === result ) { result = []; } if ( Expr.preFilter[ type ] ) { match = Expr.preFilter[ type ]( match, curLoop, inplace, result, not, isXMLFilter ); if ( !match ) { anyFound = found = true; } else if ( match === true ) { continue; } } if ( match ) { for ( var i = 0; (item = curLoop[i]) != null; i++ ) { if ( item ) { found = filter( item, match, i, curLoop ); var pass = not ^ !!found; if ( inplace found != null ) { if ( pass ) { anyFound = true; } else { curLoop[i] = false; } } else if ( pass ) { result.push( item ); anyFound = true; } } } } if ( found !== undefined ) { if ( !inplace ) { curLoop = result; } expr = expr.replace( Expr.match[ type ], "" ); if ( !anyFound ) { return []; } break; } } } // Improper expression if ( expr === old ) { if ( anyFound == null ) { Sizzle.error( expr ); } else { break; } } old = expr; } return curLoop; }; Sizzle.error = function( msg ) { throw "Syntax error, unrecognized expression " + msg; }; var Expr = Sizzle.selectors = { order [ "ID", "NAME", "TAG" ], match { ID /#((? [\w\u00c0-\uFFFF\-]|\\.)+)/, CLASS /\.((? [\w\u00c0-\uFFFF\-]|\\.)+)/, NAME /\[name=[ "]*((? [\w\u00c0-\uFFFF\-]|\\.)+)[ "]*\]/, ATTR /\[\s*((? [\w\u00c0-\uFFFF\-]|\\.)+)\s*(? (\S?=)\s*([ "]*)(.*?)\3|)\s*\]/, TAG /^((? [\w\u00c0-\uFFFF\*\-]|\\.)+)/, CHILD / (only|nth|last|first)-child(? \((even|odd|[\dn+\-]*)\))?/, POS / (nth|eq|gt|lt|first|last|even|odd)(? \((\d*)\))?(?=[^\-]|$)/, PSEUDO / ((? [\w\u00c0-\uFFFF\-]|\\.)+)(? \(([ "]?)((? \([^\)]+\)|[^\(\)]*)+)\2\))?/ }, leftMatch {}, attrMap { "class" "className", "for" "htmlFor" }, attrHandle { href function(elem){ return elem.getAttribute("href"); } }, relative { "+" function(checkSet, part){ var isPartStr = typeof part === "string", isTag = isPartStr !/\W/.test(part), isPartStrNotTag = isPartStr !isTag; if ( isTag ) { part = part.toLowerCase(); } for ( var i = 0, l = checkSet.length, elem; i l; i++ ) { if ( (elem = checkSet[i]) ) { while ( (elem = elem.previousSibling) elem.nodeType !== 1 ) {} checkSet[i] = isPartStrNotTag || elem elem.nodeName.toLowerCase() === part ? elem || false elem === part; } } if ( isPartStrNotTag ) { Sizzle.filter( part, checkSet, true ); } }, " " function(checkSet, part){ var isPartStr = typeof part === "string", elem, i = 0, l = checkSet.length; if ( isPartStr !/\W/.test(part) ) { part = part.toLowerCase(); for ( ; i l; i++ ) { elem = checkSet[i]; if ( elem ) { var parent = elem.parentNode; checkSet[i] = parent.nodeName.toLowerCase() === part ? parent false; } } } else { for ( ; i l; i++ ) { elem = checkSet[i]; if ( elem ) { checkSet[i] = isPartStr ? elem.parentNode elem.parentNode === part; } } if ( isPartStr ) { Sizzle.filter( part, checkSet, true ); } } }, "" function(checkSet, part, isXML){ var doneName = done++, checkFn = dirCheck, nodeCheck; if ( typeof part === "string" !/\W/.test(part) ) { part = part.toLowerCase(); nodeCheck = part; checkFn = dirNodeCheck; } checkFn("parentNode", part, doneName, checkSet, nodeCheck, isXML); }, "~" function(checkSet, part, isXML){ var doneName = done++, checkFn = dirCheck, nodeCheck; if ( typeof part === "string" !/\W/.test(part) ) { part = part.toLowerCase(); nodeCheck = part; checkFn = dirNodeCheck; } checkFn("previousSibling", part, doneName, checkSet, nodeCheck, isXML); } }, find { ID function(match, context, isXML){ if ( typeof context.getElementById !== "undefined" !isXML ) { var m = context.getElementById(match[1]); // Check parentNode to catch when Blackberry 4.6 returns // nodes that are no longer in the document #6963 return m m.parentNode ? [m] []; } }, NAME function(match, context){ if ( typeof context.getElementsByName !== "undefined" ) { var ret = [], results = context.getElementsByName(match[1]); for ( var i = 0, l = results.length; i l; i++ ) { if ( results[i].getAttribute("name") === match[1] ) { ret.push( results[i] ); } } return ret.length === 0 ? null ret; } }, TAG function(match, context){ return context.getElementsByTagName(match[1]); } }, preFilter { CLASS function(match, curLoop, inplace, result, not, isXML){ match = " " + match[1].replace(/\\/g, "") + " "; if ( isXML ) { return match; } for ( var i = 0, elem; (elem = curLoop[i]) != null; i++ ) { if ( elem ) { if ( not ^ (elem.className (" " + elem.className + " ").replace(/[\t\n]/g, " ").indexOf(match) = 0) ) { if ( !inplace ) { result.push( elem ); } } else if ( inplace ) { curLoop[i] = false; } } } return false; }, ID function(match){ return match[1].replace(/\\/g, ""); }, TAG function(match, curLoop){ return match[1].toLowerCase(); }, CHILD function(match){ if ( match[1] === "nth" ) { // parse equations like even , odd , 5 , 2n , 3n+2 , 4n-1 , -n+6 var test = /(-?)(\d*)n((? \+|-)?\d*)/.exec( match[2] === "even" "2n" || match[2] === "odd" "2n+1" || !/\D/.test( match[2] ) "0n+" + match[2] || match[2]); // calculate the numbers (first)n+(last) including if they are negative match[2] = (test[1] + (test[2] || 1)) - 0; match[3] = test[3] - 0; } // TODO Move to normal caching system match[0] = done++; return match; }, ATTR function(match, curLoop, inplace, result, not, isXML){ var name = match[1].replace(/\\/g, ""); if ( !isXML Expr.attrMap[name] ) { match[1] = Expr.attrMap[name]; } if ( match[2] === "~=" ) { match[4] = " " + match[4] + " "; } return match; }, PSEUDO function(match, curLoop, inplace, result, not){ if ( match[1] === "not" ) { // If we re dealing with a complex expression, or a simple one if ( ( chunker.exec(match[3]) || "" ).length 1 || /^\w/.test(match[3]) ) { match[3] = Sizzle(match[3], null, null, curLoop); } else { var ret = Sizzle.filter(match[3], curLoop, inplace, true ^ not); if ( !inplace ) { result.push.apply( result, ret ); } return false; } } else if ( Expr.match.POS.test( match[0] ) || Expr.match.CHILD.test( match[0] ) ) { return true; } return match; }, POS function(match){ match.unshift( true ); return match; } }, filters { enabled function(elem){ return elem.disabled === false elem.type !== "hidden"; }, disabled function(elem){ return elem.disabled === true; }, checked function(elem){ return elem.checked === true; }, selected function(elem){ // Accessing this property makes selected-by-default // options in Safari work properly elem.parentNode.selectedIndex; return elem.selected === true; }, parent function(elem){ return !!elem.firstChild; }, empty function(elem){ return !elem.firstChild; }, has function(elem, i, match){ return !!Sizzle( match[3], elem ).length; }, header function(elem){ return (/h\d/i).test( elem.nodeName ); }, text function(elem){ return "text" === elem.type; }, radio function(elem){ return "radio" === elem.type; }, checkbox function(elem){ return "checkbox" === elem.type; }, file function(elem){ return "file" === elem.type; }, password function(elem){ return "password" === elem.type; }, submit function(elem){ return "submit" === elem.type; }, image function(elem){ return "image" === elem.type; }, reset function(elem){ return "reset" === elem.type; }, button function(elem){ return "button" === elem.type || elem.nodeName.toLowerCase() === "button"; }, input function(elem){ return (/input|select|textarea|button/i).test(elem.nodeName); } }, setFilters { first function(elem, i){ return i === 0; }, last function(elem, i, match, array){ return i === array.length - 1; }, even function(elem, i){ return i % 2 === 0; }, odd function(elem, i){ return i % 2 === 1; }, lt function(elem, i, match){ return i match[3] - 0; }, gt function(elem, i, match){ return i match[3] - 0; }, nth function(elem, i, match){ return match[3] - 0 === i; }, eq function(elem, i, match){ return match[3] - 0 === i; } }, filter { PSEUDO function(elem, match, i, array){ var name = match[1], filter = Expr.filters[ name ]; if ( filter ) { return filter( elem, i, match, array ); } else if ( name === "contains" ) { return (elem.textContent || elem.innerText || Sizzle.getText([ elem ]) || "").indexOf(match[3]) = 0; } else if ( name === "not" ) { var not = match[3]; for ( var j = 0, l = not.length; j l; j++ ) { if ( not[j] === elem ) { return false; } } return true; } else { Sizzle.error( "Syntax error, unrecognized expression " + name ); } }, CHILD function(elem, match){ var type = match[1], node = elem; switch (type) { case only case first while ( (node = node.previousSibling) ) { if ( node.nodeType === 1 ) { return false; } } if ( type === "first" ) { return true; } node = elem; case last while ( (node = node.nextSibling) ) { if ( node.nodeType === 1 ) { return false; } } return true; case nth var first = match[2], last = match[3]; if ( first === 1 last === 0 ) { return true; } var doneName = match[0], parent = elem.parentNode; if ( parent (parent.sizcache !== doneName || !elem.nodeIndex) ) { var count = 0; for ( node = parent.firstChild; node; node = node.nextSibling ) { if ( node.nodeType === 1 ) { node.nodeIndex = ++count; } } parent.sizcache = doneName; } var diff = elem.nodeIndex - last; if ( first === 0 ) { return diff === 0; } else { return ( diff % first === 0 diff / first = 0 ); } } }, ID function(elem, match){ return elem.nodeType === 1 elem.getAttribute("id") === match; }, TAG function(elem, match){ return (match === "*" elem.nodeType === 1) || elem.nodeName.toLowerCase() === match; }, CLASS function(elem, match){ return (" " + (elem.className || elem.getAttribute("class")) + " ") .indexOf( match ) -1; }, ATTR function(elem, match){ var name = match[1], result = Expr.attrHandle[ name ] ? Expr.attrHandle[ name ]( elem ) elem[ name ] != null ? elem[ name ] elem.getAttribute( name ), value = result + "", type = match[2], check = match[4]; return result == null ? type === "!=" type === "=" ? value === check type === "*=" ? value.indexOf(check) = 0 type === "~=" ? (" " + value + " ").indexOf(check) = 0 !check ? value result !== false type === "!=" ? value !== check type === "^=" ? value.indexOf(check) === 0 type === "$=" ? value.substr(value.length - check.length) === check type === "|=" ? value === check || value.substr(0, check.length + 1) === check + "-" false; }, POS function(elem, match, i, array){ var name = match[2], filter = Expr.setFilters[ name ]; if ( filter ) { return filter( elem, i, match, array ); } } } }; var origPOS = Expr.match.POS, fescape = function(all, num){ return "\\" + (num - 0 + 1); }; for ( var type in Expr.match ) { Expr.match[ type ] = new RegExp( Expr.match[ type ].source + (/(?![^\[]*\])(?![^\(]*\))/.source) ); Expr.leftMatch[ type ] = new RegExp( /(^(? .|\r|\n)*?)/.source + Expr.match[ type ].source.replace(/\\(\d+)/g, fescape) ); } var makeArray = function(array, results) { array = Array.prototype.slice.call( array, 0 ); if ( results ) { results.push.apply( results, array ); return results; } return array; }; // Perform a simple check to determine if the browser is capable of // converting a NodeList to an array using builtin methods. // Also verifies that the returned array holds DOM nodes // (which is not the case in the Blackberry browser) try { Array.prototype.slice.call( document.documentElement.childNodes, 0 )[0].nodeType; // Provide a fallback method if it does not work } catch(e){ makeArray = function(array, results) { var ret = results || [], i = 0; if ( toString.call(array) === "[object Array]" ) { Array.prototype.push.apply( ret, array ); } else { if ( typeof array.length === "number" ) { for ( var l = array.length; i l; i++ ) { ret.push( array[i] ); } } else { for ( ; array[i]; i++ ) { ret.push( array[i] ); } } } return ret; }; } var sortOrder, siblingCheck; if ( document.documentElement.compareDocumentPosition ) { sortOrder = function( a, b ) { if ( a === b ) { hasDuplicate = true; return 0; } if ( !a.compareDocumentPosition || !b.compareDocumentPosition ) { return a.compareDocumentPosition ? -1 1; } return a.compareDocumentPosition(b) 4 ? -1 1; }; } else { sortOrder = function( a, b ) { var ap = [], bp = [], aup = a.parentNode, bup = b.parentNode, cur = aup, al, bl; // The nodes are identical, we can exit early if ( a === b ) { hasDuplicate = true; return 0; // If the nodes are siblings (or identical) we can do a quick check } else if ( aup === bup ) { return siblingCheck( a, b ); // If no parents were found then the nodes are disconnected } else if ( !aup ) { return -1; } else if ( !bup ) { return 1; } // Otherwise they re somewhere else in the tree so we need // to build up a full list of the parentNodes for comparison while ( cur ) { ap.unshift( cur ); cur = cur.parentNode; } cur = bup; while ( cur ) { bp.unshift( cur ); cur = cur.parentNode; } al = ap.length; bl = bp.length; // Start walking down the tree looking for a discrepancy for ( var i = 0; i al i bl; i++ ) { if ( ap[i] !== bp[i] ) { return siblingCheck( ap[i], bp[i] ); } } // We ended someplace up the tree so do a sibling check return i === al ? siblingCheck( a, bp[i], -1 ) siblingCheck( ap[i], b, 1 ); }; siblingCheck = function( a, b, ret ) { if ( a === b ) { return ret; } var cur = a.nextSibling; while ( cur ) { if ( cur === b ) { return -1; } cur = cur.nextSibling; } return 1; }; } // Utility function for retreiving the text value of an array of DOM nodes Sizzle.getText = function( elems ) { var ret = "", elem; for ( var i = 0; elems[i]; i++ ) { elem = elems[i]; // Get the text from text nodes and CDATA nodes if ( elem.nodeType === 3 || elem.nodeType === 4 ) { ret += elem.nodeValue; // Traverse everything else, except comment nodes } else if ( elem.nodeType !== 8 ) { ret += Sizzle.getText( elem.childNodes ); } } return ret; }; // Check to see if the browser returns elements by name when // querying by getElementById (and provide a workaround) (function(){ // We re going to inject a fake input element with a specified name var form = document.createElement("div"), id = "script" + (new Date()).getTime(); form.innerHTML = " a name= " + id + " / "; // Inject it into the root element, check its status, and remove it quickly var root = document.documentElement; root.insertBefore( form, root.firstChild ); // The workaround has to do additional checks after a getElementById // Which slows things down for other browsers (hence the branching) if ( document.getElementById( id ) ) { Expr.find.ID = function(match, context, isXML){ if ( typeof context.getElementById !== "undefined" !isXML ) { var m = context.getElementById(match[1]); return m ? m.id === match[1] || typeof m.getAttributeNode !== "undefined" m.getAttributeNode("id").nodeValue === match[1] ? [m] undefined []; } }; Expr.filter.ID = function(elem, match){ var node = typeof elem.getAttributeNode !== "undefined" elem.getAttributeNode("id"); return elem.nodeType === 1 node node.nodeValue === match; }; } root.removeChild( form ); root = form = null; // release memory in IE })(); (function(){ // Check to see if the browser returns only elements // when doing getElementsByTagName("*") // Create a fake element var div = document.createElement("div"); div.appendChild( document.createComment("") ); // Make sure no comments are found if ( div.getElementsByTagName("*").length 0 ) { Expr.find.TAG = function(match, context){ var results = context.getElementsByTagName(match[1]); // Filter out possible comments if ( match[1] === "*" ) { var tmp = []; for ( var i = 0; results[i]; i++ ) { if ( results[i].nodeType === 1 ) { tmp.push( results[i] ); } } results = tmp; } return results; }; } // Check to see if an attribute returns normalized href attributes div.innerHTML = " a href= # /a "; if ( div.firstChild typeof div.firstChild.getAttribute !== "undefined" div.firstChild.getAttribute("href") !== "#" ) { Expr.attrHandle.href = function(elem){ return elem.getAttribute("href", 2); }; } div = null; // release memory in IE })(); if ( document.querySelectorAll ) { (function(){ var oldSizzle = Sizzle, div = document.createElement("div"); div.innerHTML = " p class= TEST /p "; // Safari can t handle uppercase or unicode characters when // in quirks mode. if ( div.querySelectorAll div.querySelectorAll(".TEST").length === 0 ) { return; } Sizzle = function(query, context, extra, seed){ context = context || document; // Only use querySelectorAll on non-XML documents // (ID selectors don t work in non-HTML documents) if ( !seed !Sizzle.isXML(context) ) { if ( context.nodeType === 9 ) { try { return makeArray( context.querySelectorAll(query), extra ); } catch(qsaError) {} // qSA works strangely on Element-rooted queries // We can work around this by specifying an extra ID on the root // and working up from there (Thanks to Andrew Dupont for the technique) // IE 8 doesn t work on object elements } else if ( context.nodeType === 1 context.nodeName.toLowerCase() !== "object" ) { var old = context.id, id = context.id = "__sizzle__"; try { return makeArray( context.querySelectorAll( "#" + id + " " + query ), extra ); } catch(pseudoError) { } finally { if ( old ) { context.id = old; } else { context.removeAttribute( "id" ); } } } } return oldSizzle(query, context, extra, seed); }; for ( var prop in oldSizzle ) { Sizzle[ prop ] = oldSizzle[ prop ]; } div = null; // release memory in IE })(); } (function(){ var html = document.documentElement, matches = html.matchesSelector || html.mozMatchesSelector || html.webkitMatchesSelector || html.msMatchesSelector, pseudoWorks = false; try { // This should fail with an exception // Gecko does not error, returns false instead matches.call( document.documentElement, " sizzle" ); } catch( pseudoError ) { pseudoWorks = true; } if ( matches ) { Sizzle.matchesSelector = function( node, expr ) { try { if ( pseudoWorks || !Expr.match.PSEUDO.test( expr ) ) { return matches.call( node, expr ); } } catch(e) {} return Sizzle(expr, null, null, [node]).length 0; }; } })(); (function(){ var div = document.createElement("div"); div.innerHTML = " div class= test e /div div class= test /div "; // Opera can t find a second classname (in 9.6) // Also, make sure that getElementsByClassName actually exists if ( !div.getElementsByClassName || div.getElementsByClassName("e").length === 0 ) { return; } // Safari caches class attributes, doesn t catch changes (in 3.2) div.lastChild.className = "e"; if ( div.getElementsByClassName("e").length === 1 ) { return; } Expr.order.splice(1, 0, "CLASS"); Expr.find.CLASS = function(match, context, isXML) { if ( typeof context.getElementsByClassName !== "undefined" !isXML ) { return context.getElementsByClassName(match[1]); } }; div = null; // release memory in IE })(); function dirNodeCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) { for ( var i = 0, l = checkSet.length; i l; i++ ) { var elem = checkSet[i]; if ( elem ) { elem = elem[dir]; var match = false; while ( elem ) { if ( elem.sizcache === doneName ) { match = checkSet[elem.sizset]; break; } if ( elem.nodeType === 1 !isXML ){ elem.sizcache = doneName; elem.sizset = i; } if ( elem.nodeName.toLowerCase() === cur ) { match = elem; break; } elem = elem[dir]; } checkSet[i] = match; } } } function dirCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) { for ( var i = 0, l = checkSet.length; i l; i++ ) { var elem = checkSet[i]; if ( elem ) { elem = elem[dir]; var match = false; while ( elem ) { if ( elem.sizcache === doneName ) { match = checkSet[elem.sizset]; break; } if ( elem.nodeType === 1 ) { if ( !isXML ) { elem.sizcache = doneName; elem.sizset = i; } if ( typeof cur !== "string" ) { if ( elem === cur ) { match = true; break; } } else if ( Sizzle.filter( cur, [elem] ).length 0 ) { match = elem; break; } } elem = elem[dir]; } checkSet[i] = match; } } } Sizzle.contains = document.documentElement.contains ? function(a, b){ return a !== b (a.contains ? a.contains(b) true); } function(a, b){ return !!(a.compareDocumentPosition(b) 16); }; Sizzle.isXML = function(elem){ // documentElement is verified for cases where it doesn t yet exist // (such as loading iframes in IE - #4833) var documentElement = (elem ? elem.ownerDocument || elem 0).documentElement; return documentElement ? documentElement.nodeName !== "HTML" false; }; var posProcess = function(selector, context){ var tmpSet = [], later = "", match, root = context.nodeType ? [context] context; // Position selectors must be done after the filter // And so must not(positional) so we move all PSEUDOs to the end while ( (match = Expr.match.PSEUDO.exec( selector )) ) { later += match[0]; selector = selector.replace( Expr.match.PSEUDO, "" ); } selector = Expr.relative[selector] ? selector + "*" selector; for ( var i = 0, l = root.length; i l; i++ ) { Sizzle( selector, root[i], tmpSet ); } return Sizzle.filter( later, tmpSet ); }; // EXPOSE jQuery.find = Sizzle; jQuery.expr = Sizzle.selectors; jQuery.expr[" "] = jQuery.expr.filters; jQuery.unique = Sizzle.uniqueSort; jQuery.text = Sizzle.getText; jQuery.isXMLDoc = Sizzle.isXML; jQuery.contains = Sizzle.contains; })(); var runtil = /Until$/, rparentsprev = /^(? parents|prevUntil|prevAll)/, // Note This RegExp should be improved, or likely pulled from Sizzle rmultiselector = /,/, isSimple = /^.[^ #\[\.,]*$/, slice = Array.prototype.slice, POS = jQuery.expr.match.POS; jQuery.fn.extend({ find function( selector ) { var ret = this.pushStack( "", "find", selector ), length = 0; for ( var i = 0, l = this.length; i l; i++ ) { length = ret.length; jQuery.find( selector, this[i], ret ); if ( i 0 ) { // Make sure that the results are unique for ( var n = length; n ret.length; n++ ) { for ( var r = 0; r length; r++ ) { if ( ret[r] === ret[n] ) { ret.splice(n--, 1); break; } } } } } return ret; }, has function( target ) { var targets = jQuery( target ); return this.filter(function() { for ( var i = 0, l = targets.length; i l; i++ ) { if ( jQuery.contains( this, targets[i] ) ) { return true; } } }); }, not function( selector ) { return this.pushStack( winnow(this, selector, false), "not", selector); }, filter function( selector ) { return this.pushStack( winnow(this, selector, true), "filter", selector ); }, is function( selector ) { return !!selector jQuery.filter( selector, this ).length 0; }, closest function( selectors, context ) { var ret = [], i, l, cur = this[0]; if ( jQuery.isArray( selectors ) ) { var match, matches = {}, selector, level = 1; if ( cur selectors.length ) { for ( i = 0, l = selectors.length; i l; i++ ) { selector = selectors[i]; if ( !matches[selector] ) { matches[selector] = jQuery.expr.match.POS.test( selector ) ? jQuery( selector, context || this.context ) selector; } } while ( cur cur.ownerDocument cur !== context ) { for ( selector in matches ) { match = matches[selector]; if ( match.jquery ? match.index(cur) -1 jQuery(cur).is(match) ) { ret.push({ selector selector, elem cur, level level }); } } cur = cur.parentNode; level++; } } return ret; } var pos = POS.test( selectors ) ? jQuery( selectors, context || this.context ) null; for ( i = 0, l = this.length; i l; i++ ) { cur = this[i]; while ( cur ) { if ( pos ? pos.index(cur) -1 jQuery.find.matchesSelector(cur, selectors) ) { ret.push( cur ); break; } else { cur = cur.parentNode; if ( !cur || !cur.ownerDocument || cur === context ) { break; } } } } ret = ret.length 1 ? jQuery.unique(ret) ret; return this.pushStack( ret, "closest", selectors ); }, // Determine the position of an element within // the matched set of elements index function( elem ) { if ( !elem || typeof elem === "string" ) { return jQuery.inArray( this[0], // If it receives a string, the selector is used // If it receives nothing, the siblings are used elem ? jQuery( elem ) this.parent().children() ); } // Locate the position of the desired element return jQuery.inArray( // If it receives a jQuery object, the first element is used elem.jquery ? elem[0] elem, this ); }, add function( selector, context ) { var set = typeof selector === "string" ? jQuery( selector, context || this.context ) jQuery.makeArray( selector ), all = jQuery.merge( this.get(), set ); return this.pushStack( isDisconnected( set[0] ) || isDisconnected( all[0] ) ? all jQuery.unique( all ) ); }, andSelf function() { return this.add( this.prevObject ); } }); // A painfully simple check to see if an element is disconnected // from a document (should be improved, where feasible). function isDisconnected( node ) { return !node || !node.parentNode || node.parentNode.nodeType === 11; } jQuery.each({ parent function( elem ) { var parent = elem.parentNode; return parent parent.nodeType !== 11 ? parent null; }, parents function( elem ) { return jQuery.dir( elem, "parentNode" ); }, parentsUntil function( elem, i, until ) { return jQuery.dir( elem, "parentNode", until ); }, next function( elem ) { return jQuery.nth( elem, 2, "nextSibling" ); }, prev function( elem ) { return jQuery.nth( elem, 2, "previousSibling" ); }, nextAll function( elem ) { return jQuery.dir( elem, "nextSibling" ); }, prevAll function( elem ) { return jQuery.dir( elem, "previousSibling" ); }, nextUntil function( elem, i, until ) { return jQuery.dir( elem, "nextSibling", until ); }, prevUntil function( elem, i, until ) { return jQuery.dir( elem, "previousSibling", until ); }, siblings function( elem ) { return jQuery.sibling( elem.parentNode.firstChild, elem ); }, children function( elem ) { return jQuery.sibling( elem.firstChild ); }, contents function( elem ) { return jQuery.nodeName( elem, "iframe" ) ? elem.contentDocument || elem.contentWindow.document jQuery.makeArray( elem.childNodes ); } }, function( name, fn ) { jQuery.fn[ name ] = function( until, selector ) { var ret = jQuery.map( this, fn, until ); if ( !runtil.test( name ) ) { selector = until; } if ( selector typeof selector === "string" ) { ret = jQuery.filter( selector, ret ); } ret = this.length 1 ? jQuery.unique( ret ) ret; if ( (this.length 1 || rmultiselector.test( selector )) rparentsprev.test( name ) ) { ret = ret.reverse(); } return this.pushStack( ret, name, slice.call(arguments).join(",") ); }; }); jQuery.extend({ filter function( expr, elems, not ) { if ( not ) { expr = " not(" + expr + ")"; } return elems.length === 1 ? jQuery.find.matchesSelector(elems[0], expr) ? [ elems[0] ] [] jQuery.find.matches(expr, elems); }, dir function( elem, dir, until ) { var matched = [], cur = elem[dir]; while ( cur cur.nodeType !== 9 (until === undefined || cur.nodeType !== 1 || !jQuery( cur ).is( until )) ) { if ( cur.nodeType === 1 ) { matched.push( cur ); } cur = cur[dir]; } return matched; }, nth function( cur, result, dir, elem ) { result = result || 1; var num = 0; for ( ; cur; cur = cur[dir] ) { if ( cur.nodeType === 1 ++num === result ) { break; } } return cur; }, sibling function( n, elem ) { var r = []; for ( ; n; n = n.nextSibling ) { if ( n.nodeType === 1 n !== elem ) { r.push( n ); } } return r; } }); // Implement the identical functionality for filter and not function winnow( elements, qualifier, keep ) { if ( jQuery.isFunction( qualifier ) ) { return jQuery.grep(elements, function( elem, i ) { var retVal = !!qualifier.call( elem, i, elem ); return retVal === keep; }); } else if ( qualifier.nodeType ) { return jQuery.grep(elements, function( elem, i ) { return (elem === qualifier) === keep; }); } else if ( typeof qualifier === "string" ) { var filtered = jQuery.grep(elements, function( elem ) { return elem.nodeType === 1; }); if ( isSimple.test( qualifier ) ) { return jQuery.filter(qualifier, filtered, !keep); } else { qualifier = jQuery.filter( qualifier, filtered ); } } return jQuery.grep(elements, function( elem, i ) { return (jQuery.inArray( elem, qualifier ) = 0) === keep; }); } var rinlinejQuery = / jQuery\d+="(? \d+|null)"/g, rleadingWhitespace = /^\s+/, rxhtmlTag = / (?!area|br|col|embed|hr|img|input|link|meta|param)(([\w ]+)[^ ]*)\/ /ig, rtagName = / ([\w ]+)/, rtbody = / tbody/i, rhtml = / | #?\w+;/, rnocache = / (? script|object|embed|option|style)/i, rchecked = /checked\s*(? [^=]|=\s*.checked.)/i, // checked="checked" or checked (html5) raction = /\=([^=" \s]+\/) /g, wrapMap = { option [ 1, " select multiple= multiple ", " /select " ], legend [ 1, " fieldset ", " /fieldset " ], thead [ 1, " table ", " /table " ], tr [ 2, " table tbody ", " /tbody /table " ], td [ 3, " table tbody tr ", " /tr /tbody /table " ], col [ 2, " table tbody /tbody colgroup ", " /colgroup /table " ], area [ 1, " map ", " /map " ], _default [ 0, "", "" ] }; wrapMap.optgroup = wrapMap.option; wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; wrapMap.th = wrapMap.td; // IE can t serialize link and script tags normally if ( !jQuery.support.htmlSerialize ) { wrapMap._default = [ 1, "div div ", " /div " ]; } jQuery.fn.extend({ text function( text ) { if ( jQuery.isFunction(text) ) { return this.each(function(i) { var self = jQuery(this); self.text( text.call(this, i, self.text()) ); }); } if ( typeof text !== "object" text !== undefined ) { return this.empty().append( (this[0] this[0].ownerDocument || document).createTextNode( text ) ); } return jQuery.text( this ); }, wrapAll function( html ) { if ( jQuery.isFunction( html ) ) { return this.each(function(i) { jQuery(this).wrapAll( html.call(this, i) ); }); } if ( this[0] ) { // The elements to wrap the target around var wrap = jQuery( html, this[0].ownerDocument ).eq(0).clone(true); if ( this[0].parentNode ) { wrap.insertBefore( this[0] ); } wrap.map(function() { var elem = this; while ( elem.firstChild elem.firstChild.nodeType === 1 ) { elem = elem.firstChild; } return elem; }).append(this); } return this; }, wrapInner function( html ) { if ( jQuery.isFunction( html ) ) { return this.each(function(i) { jQuery(this).wrapInner( html.call(this, i) ); }); } return this.each(function() { var self = jQuery( this ), contents = self.contents(); if ( contents.length ) { contents.wrapAll( html ); } else { self.append( html ); } }); }, wrap function( html ) { return this.each(function() { jQuery( this ).wrapAll( html ); }); }, unwrap function() { return this.parent().each(function() { if ( !jQuery.nodeName( this, "body" ) ) { jQuery( this ).replaceWith( this.childNodes ); } }).end(); }, append function() { return this.domManip(arguments, true, function( elem ) { if ( this.nodeType === 1 ) { this.appendChild( elem ); } }); }, prepend function() { return this.domManip(arguments, true, function( elem ) { if ( this.nodeType === 1 ) { this.insertBefore( elem, this.firstChild ); } }); }, before function() { if ( this[0] this[0].parentNode ) { return this.domManip(arguments, false, function( elem ) { this.parentNode.insertBefore( elem, this ); }); } else if ( arguments.length ) { var set = jQuery(arguments[0]); set.push.apply( set, this.toArray() ); return this.pushStack( set, "before", arguments ); } }, after function() { if ( this[0] this[0].parentNode ) { return this.domManip(arguments, false, function( elem ) { this.parentNode.insertBefore( elem, this.nextSibling ); }); } else if ( arguments.length ) { var set = this.pushStack( this, "after", arguments ); set.push.apply( set, jQuery(arguments[0]).toArray() ); return set; } }, // keepData is for internal use only--do not document remove function( selector, keepData ) { for ( var i = 0, elem; (elem = this[i]) != null; i++ ) { if ( !selector || jQuery.filter( selector, [ elem ] ).length ) { if ( !keepData elem.nodeType === 1 ) { jQuery.cleanData( elem.getElementsByTagName("*") ); jQuery.cleanData( [ elem ] ); } if ( elem.parentNode ) { elem.parentNode.removeChild( elem ); } } } return this; }, empty function() { for ( var i = 0, elem; (elem = this[i]) != null; i++ ) { // Remove element nodes and prevent memory leaks if ( elem.nodeType === 1 ) { jQuery.cleanData( elem.getElementsByTagName("*") ); } // Remove any remaining nodes while ( elem.firstChild ) { elem.removeChild( elem.firstChild ); } } return this; }, clone function( events ) { // Do the clone var ret = this.map(function() { if ( !jQuery.support.noCloneEvent !jQuery.isXMLDoc(this) ) { // IE copies events bound via attachEvent when // using cloneNode. Calling detachEvent on the // clone will also remove the events from the orignal // In order to get around this, we use innerHTML. // Unfortunately, this means some modifications to // attributes in IE that are actually only stored // as properties will not be copied (such as the // the name attribute on an input). var html = this.outerHTML, ownerDocument = this.ownerDocument; if ( !html ) { var div = ownerDocument.createElement("div"); div.appendChild( this.cloneNode(true) ); html = div.innerHTML; } return jQuery.clean([html.replace(rinlinejQuery, "") // Handle the case in IE 8 where action=/test/ self-closes a tag .replace(raction, ="$1" ) .replace(rleadingWhitespace, "")], ownerDocument)[0]; } else { return this.cloneNode(true); } }); // Copy the events from the original to the clone if ( events === true ) { cloneCopyEvent( this, ret ); cloneCopyEvent( this.find("*"), ret.find("*") ); } // Return the cloned set return ret; }, html function( value ) { if ( value === undefined ) { return this[0] this[0].nodeType === 1 ? this[0].innerHTML.replace(rinlinejQuery, "") null; // See if we can take a shortcut and just use innerHTML } else if ( typeof value === "string" !rnocache.test( value ) (jQuery.support.leadingWhitespace || !rleadingWhitespace.test( value )) !wrapMap[ (rtagName.exec( value ) || ["", ""])[1].toLowerCase() ] ) { value = value.replace(rxhtmlTag, " $1 /$2 "); try { for ( var i = 0, l = this.length; i l; i++ ) { // Remove element nodes and prevent memory leaks if ( this[i].nodeType === 1 ) { jQuery.cleanData( this[i].getElementsByTagName("*") ); this[i].innerHTML = value; } } // If using innerHTML throws an exception, use the fallback method } catch(e) { this.empty().append( value ); } } else if ( jQuery.isFunction( value ) ) { this.each(function(i){ var self = jQuery(this); self.html( value.call(this, i, self.html()) ); }); } else { this.empty().append( value ); } return this; }, replaceWith function( value ) { if ( this[0] this[0].parentNode ) { // Make sure that the elements are removed from the DOM before they are inserted // this can help fix replacing a parent with child elements if ( jQuery.isFunction( value ) ) { return this.each(function(i) { var self = jQuery(this), old = self.html(); self.replaceWith( value.call( this, i, old ) ); }); } if ( typeof value !== "string" ) { value = jQuery(value).detach(); } return this.each(function() { var next = this.nextSibling, parent = this.parentNode; jQuery(this).remove(); if ( next ) { jQuery(next).before( value ); } else { jQuery(parent).append( value ); } }); } else { return this.pushStack( jQuery(jQuery.isFunction(value) ? value() value), "replaceWith", value ); } }, detach function( selector ) { return this.remove( selector, true ); }, domManip function( args, table, callback ) { var results, first, value = args[0], scripts = [], fragment, parent; // We can t cloneNode fragments that contain checked, in WebKit if ( !jQuery.support.checkClone arguments.length === 3 typeof value === "string" rchecked.test( value ) ) { return this.each(function() { jQuery(this).domManip( args, table, callback, true ); }); } if ( jQuery.isFunction(value) ) { return this.each(function(i) { var self = jQuery(this); args[0] = value.call(this, i, table ? self.html() undefined); self.domManip( args, table, callback ); }); } if ( this[0] ) { parent = value value.parentNode; // If we re in a fragment, just use that instead of building a new one if ( jQuery.support.parentNode parent parent.nodeType === 11 parent.childNodes.length === this.length ) { results = { fragment parent }; } else { results = jQuery.buildFragment( args, this, scripts ); } fragment = results.fragment; if ( fragment.childNodes.length === 1 ) { first = fragment = fragment.firstChild; } else { first = fragment.firstChild; } if ( first ) { table = table jQuery.nodeName( first, "tr" ); for ( var i = 0, l = this.length; i l; i++ ) { callback.call( table ? root(this[i], first) this[i], i 0 || results.cacheable || this.length 1 ? fragment.cloneNode(true) fragment ); } } if ( scripts.length ) { jQuery.each( scripts, evalScript ); } } return this; } }); function root( elem, cur ) { return jQuery.nodeName(elem, "table") ? (elem.getElementsByTagName("tbody")[0] || elem.appendChild(elem.ownerDocument.createElement("tbody"))) elem; } function cloneCopyEvent(orig, ret) { var i = 0; ret.each(function() { if ( this.nodeName !== (orig[i] orig[i].nodeName) ) { return; } var oldData = jQuery.data( orig[i++] ), curData = jQuery.data( this, oldData ), events = oldData oldData.events; if ( events ) { delete curData.handle; curData.events = {}; for ( var type in events ) { for ( var handler in events[ type ] ) { jQuery.event.add( this, type, events[ type ][ handler ], events[ type ][ handler ].data ); } } } }); } jQuery.buildFragment = function( args, nodes, scripts ) { var fragment, cacheable, cacheresults, doc = (nodes nodes[0] ? nodes[0].ownerDocument || nodes[0] document); // Only cache "small" (1/2 KB) strings that are associated with the main document // Cloning options loses the selected state, so don t cache them // IE 6 doesn t like it when you put object or embed elements in a fragment // Also, WebKit does not clone checked attributes on cloneNode, so don t cache if ( args.length === 1 typeof args[0] === "string" args[0].length 512 doc === document !rnocache.test( args[0] ) (jQuery.support.checkClone || !rchecked.test( args[0] )) ) { cacheable = true; cacheresults = jQuery.fragments[ args[0] ]; if ( cacheresults ) { if ( cacheresults !== 1 ) { fragment = cacheresults; } } } if ( !fragment ) { fragment = doc.createDocumentFragment(); jQuery.clean( args, doc, fragment, scripts ); } if ( cacheable ) { jQuery.fragments[ args[0] ] = cacheresults ? fragment 1; } return { fragment fragment, cacheable cacheable }; }; jQuery.fragments = {}; jQuery.each({ appendTo "append", prependTo "prepend", insertBefore "before", insertAfter "after", replaceAll "replaceWith" }, function( name, original ) { jQuery.fn[ name ] = function( selector ) { var ret = [], insert = jQuery( selector ), parent = this.length === 1 this[0].parentNode; if ( parent parent.nodeType === 11 parent.childNodes.length === 1 insert.length === 1 ) { insert[ original ]( this[0] ); return this; } else { for ( var i = 0, l = insert.length; i l; i++ ) { var elems = (i 0 ? this.clone(true) this).get(); jQuery( insert[i] )[ original ]( elems ); ret = ret.concat( elems ); } return this.pushStack( ret, name, insert.selector ); } }; }); jQuery.extend({ clean function( elems, context, fragment, scripts ) { context = context || document; // !context.createElement fails in IE with an error but returns typeof object if ( typeof context.createElement === "undefined" ) { context = context.ownerDocument || context[0] context[0].ownerDocument || document; } var ret = []; for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) { if ( typeof elem === "number" ) { elem += ""; } if ( !elem ) { continue; } // Convert html string into DOM nodes if ( typeof elem === "string" !rhtml.test( elem ) ) { elem = context.createTextNode( elem ); } else if ( typeof elem === "string" ) { // Fix "XHTML"-style tags in all browsers elem = elem.replace(rxhtmlTag, " $1 /$2 "); // Trim whitespace, otherwise indexOf won t work as expected var tag = (rtagName.exec( elem ) || ["", ""])[1].toLowerCase(), wrap = wrapMap[ tag ] || wrapMap._default, depth = wrap[0], div = context.createElement("div"); // Go to html and back, then peel off extra wrappers div.innerHTML = wrap[1] + elem + wrap[2]; // Move to the right depth while ( depth-- ) { div = div.lastChild; } // Remove IE s autoinserted tbody from table fragments if ( !jQuery.support.tbody ) { // String was a table , *may* have spurious tbody var hasBody = rtbody.test(elem), tbody = tag === "table" !hasBody ? div.firstChild div.firstChild.childNodes // String was a bare thead or tfoot wrap[1] === " table " !hasBody ? div.childNodes []; for ( var j = tbody.length - 1; j = 0 ; --j ) { if ( jQuery.nodeName( tbody[ j ], "tbody" ) !tbody[ j ].childNodes.length ) { tbody[ j ].parentNode.removeChild( tbody[ j ] ); } } } // IE completely kills leading whitespace when innerHTML is used if ( !jQuery.support.leadingWhitespace rleadingWhitespace.test( elem ) ) { div.insertBefore( context.createTextNode( rleadingWhitespace.exec(elem)[0] ), div.firstChild ); } elem = div.childNodes; } if ( elem.nodeType ) { ret.push( elem ); } else { ret = jQuery.merge( ret, elem ); } } if ( fragment ) { for ( i = 0; ret[i]; i++ ) { if ( scripts jQuery.nodeName( ret[i], "script" ) (!ret[i].type || ret[i].type.toLowerCase() === "text/javascript") ) { scripts.push( ret[i].parentNode ? ret[i].parentNode.removeChild( ret[i] ) ret[i] ); } else { if ( ret[i].nodeType === 1 ) { ret.splice.apply( ret, [i + 1, 0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))) ); } fragment.appendChild( ret[i] ); } } } return ret; }, cleanData function( elems ) { var data, id, cache = jQuery.cache, special = jQuery.event.special, deleteExpando = jQuery.support.deleteExpando; for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) { if ( elem.nodeName jQuery.noData[elem.nodeName.toLowerCase()] ) { continue; } id = elem[ jQuery.expando ]; if ( id ) { data = cache[ id ]; if ( data data.events ) { for ( var type in data.events ) { if ( special[ type ] ) { jQuery.event.remove( elem, type ); } else { jQuery.removeEvent( elem, type, data.handle ); } } } if ( deleteExpando ) { delete elem[ jQuery.expando ]; } else if ( elem.removeAttribute ) { elem.removeAttribute( jQuery.expando ); } delete cache[ id ]; } } } }); function evalScript( i, elem ) { if ( elem.src ) { jQuery.ajax({ url elem.src, async false, dataType "script" }); } else { jQuery.globalEval( elem.text || elem.textContent || elem.innerHTML || "" ); } if ( elem.parentNode ) { elem.parentNode.removeChild( elem ); } } var ralpha = /alpha\([^)]*\)/i, ropacity = /opacity=([^)]*)/, rdashAlpha = /-([a-z])/ig, rupper = /([A-Z])/g, rnumpx = /^-?\d+(? px)?$/i, rnum = /^-?\d/, cssShow = { position "absolute", visibility "hidden", display "block" }, cssWidth = [ "Left", "Right" ], cssHeight = [ "Top", "Bottom" ], curCSS, // cache check for defaultView.getComputedStyle getComputedStyle = document.defaultView document.defaultView.getComputedStyle, fcamelCase = function( all, letter ) { return letter.toUpperCase(); }; jQuery.fn.css = function( name, value ) { // Setting undefined is a no-op if ( arguments.length === 2 value === undefined ) { return this; } return jQuery.access( this, name, value, true, function( elem, name, value ) { return value !== undefined ? jQuery.style( elem, name, value ) jQuery.css( elem, name ); }); }; jQuery.extend({ // Add in style property hooks for overriding the default // behavior of getting and setting a style property cssHooks { opacity { get function( elem, computed ) { if ( computed ) { // We should always get a number back from opacity var ret = curCSS( elem, "opacity", "opacity" ); return ret === "" ? "1" ret; } else { return elem.style.opacity; } } } }, // Exclude the following css properties to add px cssNumber { "zIndex" true, "fontWeight" true, "opacity" true, "zoom" true, "lineHeight" true }, // Add in properties whose names you wish to fix before // setting or getting the value cssProps { // normalize float css property "float" jQuery.support.cssFloat ? "cssFloat" "styleFloat" }, // Get and set the style property on a DOM Node style function( elem, name, value, extra ) { // Don t set styles on text and comment nodes if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) { return; } // Make sure that we re working with the right name var ret, origName = jQuery.camelCase( name ), style = elem.style, hooks = jQuery.cssHooks[ origName ]; name = jQuery.cssProps[ origName ] || origName; // Check if we re setting a value if ( value !== undefined ) { // Make sure that NaN and null values aren t set. See #7116 if ( typeof value === "number" isNaN( value ) || value == null ) { return; } // If a number was passed in, add px to the (except for certain CSS properties) if ( typeof value === "number" !jQuery.cssNumber[ origName ] ) { value += "px"; } // If a hook was provided, use that value, otherwise just set the specified value if ( !hooks || !("set" in hooks) || (value = hooks.set( elem, value )) !== undefined ) { // Wrapped to prevent IE from throwing errors when invalid values are provided // Fixes bug #5509 try { style[ name ] = value; } catch(e) {} } } else { // If a hook was provided get the non-computed value from there if ( hooks "get" in hooks (ret = hooks.get( elem, false, extra )) !== undefined ) { return ret; } // Otherwise just get the value from the style object return style[ name ]; } }, css function( elem, name, extra ) { // Make sure that we re working with the right name var ret, origName = jQuery.camelCase( name ), hooks = jQuery.cssHooks[ origName ]; name = jQuery.cssProps[ origName ] || origName; // If a hook was provided get the computed value from there if ( hooks "get" in hooks (ret = hooks.get( elem, true, extra )) !== undefined ) { return ret; // Otherwise, if a way to get the computed value exists, use that } else if ( curCSS ) { return curCSS( elem, name, origName ); } }, // A method for quickly swapping in/out CSS properties to get correct calculations swap function( elem, options, callback ) { var old = {}; // Remember the old values, and insert the new ones for ( var name in options ) { old[ name ] = elem.style[ name ]; elem.style[ name ] = options[ name ]; } callback.call( elem ); // Revert the old values for ( name in options ) { elem.style[ name ] = old[ name ]; } }, camelCase function( string ) { return string.replace( rdashAlpha, fcamelCase ); } }); // DEPRECATED, Use jQuery.css() instead jQuery.curCSS = jQuery.css; jQuery.each(["height", "width"], function( i, name ) { jQuery.cssHooks[ name ] = { get function( elem, computed, extra ) { var val; if ( computed ) { if ( elem.offsetWidth !== 0 ) { val = getWH( elem, name, extra ); } else { jQuery.swap( elem, cssShow, function() { val = getWH( elem, name, extra ); }); } return val + "px"; } }, set function( elem, value ) { if ( rnumpx.test( value ) ) { // ignore negative width and height values #1599 value = parseFloat(value); if ( value = 0 ) { return value + "px"; } } else { return value; } } }; }); if ( !jQuery.support.opacity ) { jQuery.cssHooks.opacity = { get function( elem, computed ) { // IE uses filters for opacity return ropacity.test((computed elem.currentStyle ? elem.currentStyle.filter elem.style.filter) || "") ? (parseFloat(RegExp.$1) / 100) + "" computed ? "1" ""; }, set function( elem, value ) { var style = elem.style; // IE has trouble with opacity if it does not have layout // Force it by setting the zoom level style.zoom = 1; // Set the alpha filter to set the opacity var opacity = jQuery.isNaN(value) ? "" "alpha(opacity=" + value * 100 + ")", filter = style.filter || ""; style.filter = ralpha.test(filter) ? filter.replace(ralpha, opacity) style.filter + + opacity; } }; } if ( getComputedStyle ) { curCSS = function( elem, newName, name ) { var ret, defaultView, computedStyle; name = name.replace( rupper, "-$1" ).toLowerCase(); if ( !(defaultView = elem.ownerDocument.defaultView) ) { return undefined; } if ( (computedStyle = defaultView.getComputedStyle( elem, null )) ) { ret = computedStyle.getPropertyValue( name ); if ( ret === "" !jQuery.contains( elem.ownerDocument.documentElement, elem ) ) { ret = jQuery.style( elem, name ); } } return ret; }; } else if ( document.documentElement.currentStyle ) { curCSS = function( elem, name ) { var left, rsLeft, ret = elem.currentStyle elem.currentStyle[ name ], style = elem.style; // From the awesome hack by Dean Edwards // http //erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291 // If we re not dealing with a regular pixel number // but a number that has a weird ending, we need to convert it to pixels if ( !rnumpx.test( ret ) rnum.test( ret ) ) { // Remember the original values left = style.left; rsLeft = elem.runtimeStyle.left; // Put in the new values to get a computed value out elem.runtimeStyle.left = elem.currentStyle.left; style.left = name === "fontSize" ? "1em" (ret || 0); ret = style.pixelLeft + "px"; // Revert the changed values style.left = left; elem.runtimeStyle.left = rsLeft; } return ret; }; } function getWH( elem, name, extra ) { var which = name === "width" ? cssWidth cssHeight, val = name === "width" ? elem.offsetWidth elem.offsetHeight; if ( extra === "border" ) { return val; } jQuery.each( which, function() { if ( !extra ) { val -= parseFloat(jQuery.css( elem, "padding" + this )) || 0; } if ( extra === "margin" ) { val += parseFloat(jQuery.css( elem, "margin" + this )) || 0; } else { val -= parseFloat(jQuery.css( elem, "border" + this + "Width" )) || 0; } }); return val; } if ( jQuery.expr jQuery.expr.filters ) { jQuery.expr.filters.hidden = function( elem ) { var width = elem.offsetWidth, height = elem.offsetHeight; return (width === 0 height === 0) || (!jQuery.support.reliableHiddenOffsets (elem.style.display || jQuery.css( elem, "display" )) === "none"); }; jQuery.expr.filters.visible = function( elem ) { return !jQuery.expr.filters.hidden( elem ); }; } var jsc = jQuery.now(), rscript = / script\b[^ ]*(? (?! \/script ) [^ ]*)* \/script /gi, rselectTextarea = /^(? select|textarea)/i, rinput = /^(? color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i, rnoContent = /^(? GET|HEAD|DELETE)$/, rbracket = /\[\]$/, jsre = /\=\?( |$)/, rquery = /\?/, rts = /([? ])_=[^ ]*/, rurl = /^(\w+ )?\/\/([^\/?#]+)/, r20 = /%20/g, rhash = /#.*$/, // Keep a copy of the old load method _load = jQuery.fn.load; jQuery.fn.extend({ load function( url, params, callback ) { if ( typeof url !== "string" _load ) { return _load.apply( this, arguments ); // Don t do a request if no elements are being requested } else if ( !this.length ) { return this; } var off = url.indexOf(" "); if ( off = 0 ) { var selector = url.slice(off, url.length); url = url.slice(0, off); } // Default to a GET request var type = "GET"; // If the second parameter was provided if ( params ) { // If it s a function if ( jQuery.isFunction( params ) ) { // We assume that it s the callback callback = params; params = null; // Otherwise, build a param string } else if ( typeof params === "object" ) { params = jQuery.param( params, jQuery.ajaxSettings.traditional ); type = "POST"; } } var self = this; // Request the remote document jQuery.ajax({ url url, type type, dataType "html", data params, complete function( res, status ) { // If successful, inject the HTML into all the matched elements if ( status === "success" || status === "notmodified" ) { // See if a selector was specified self.html( selector ? // Create a dummy div to hold the results jQuery(" div ") // inject the contents of the document in, removing the scripts // to avoid any Permission Denied errors in IE .append(res.responseText.replace(rscript, "")) // Locate the specified elements .find(selector) // If not, just inject the full result res.responseText ); } if ( callback ) { self.each( callback, [res.responseText, status, res] ); } } }); return this; }, serialize function() { return jQuery.param(this.serializeArray()); }, serializeArray function() { return this.map(function() { return this.elements ? jQuery.makeArray(this.elements) this; }) .filter(function() { return this.name !this.disabled (this.checked || rselectTextarea.test(this.nodeName) || rinput.test(this.type)); }) .map(function( i, elem ) { var val = jQuery(this).val(); return val == null ? null jQuery.isArray(val) ? jQuery.map( val, function( val, i ) { return { name elem.name, value val }; }) { name elem.name, value val }; }).get(); } }); // Attach a bunch of functions for handling common AJAX events jQuery.each( "ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function( i, o ) { jQuery.fn[o] = function( f ) { return this.bind(o, f); }; }); jQuery.extend({ get function( url, data, callback, type ) { // shift arguments if data argument was omited if ( jQuery.isFunction( data ) ) { type = type || callback; callback = data; data = null; } return jQuery.ajax({ type "GET", url url, data data, success callback, dataType type }); }, getScript function( url, callback ) { return jQuery.get(url, null, callback, "script"); }, getJSON function( url, data, callback ) { return jQuery.get(url, data, callback, "json"); }, post function( url, data, callback, type ) { // shift arguments if data argument was omited if ( jQuery.isFunction( data ) ) { type = type || callback; callback = data; data = {}; } return jQuery.ajax({ type "POST", url url, data data, success callback, dataType type }); }, ajaxSetup function( settings ) { jQuery.extend( jQuery.ajaxSettings, settings ); }, ajaxSettings { url location.href, global true, type "GET", contentType "application/x-www-form-urlencoded", processData true, async true, /* timeout 0, data null, username null, password null, traditional false, */ // This function can be overriden by calling jQuery.ajaxSetup xhr function() { return new window.XMLHttpRequest(); }, accepts { xml "application/xml, text/xml", html "text/html", script "text/javascript, application/javascript", json "application/json, text/javascript", text "text/plain", _default "*/*" } }, ajax function( origSettings ) { var s = jQuery.extend(true, {}, jQuery.ajaxSettings, origSettings), jsonp, status, data, type = s.type.toUpperCase(), noContent = rnoContent.test(type); s.url = s.url.replace( rhash, "" ); // Use original (not extended) context object if it was provided s.context = origSettings origSettings.context != null ? origSettings.context s; // convert data if not already a string if ( s.data s.processData typeof s.data !== "string" ) { s.data = jQuery.param( s.data, s.traditional ); } // Handle JSONP Parameter Callbacks if ( s.dataType === "jsonp" ) { if ( type === "GET" ) { if ( !jsre.test( s.url ) ) { s.url += (rquery.test( s.url ) ? " " "?") + (s.jsonp || "callback") + "=?"; } } else if ( !s.data || !jsre.test(s.data) ) { s.data = (s.data ? s.data + " " "") + (s.jsonp || "callback") + "=?"; } s.dataType = "json"; } // Build temporary JSONP function if ( s.dataType === "json" (s.data jsre.test(s.data) || jsre.test(s.url)) ) { jsonp = s.jsonpCallback || ("jsonp" + jsc++); // Replace the =? sequence both in the query string and the data if ( s.data ) { s.data = (s.data + "").replace(jsre, "=" + jsonp + "$1"); } s.url = s.url.replace(jsre, "=" + jsonp + "$1"); // We need to make sure // that a JSONP style response is executed properly s.dataType = "script"; // Handle JSONP-style loading var customJsonp = window[ jsonp ]; window[ jsonp ] = function( tmp ) { data = tmp; jQuery.handleSuccess( s, xhr, status, data ); jQuery.handleComplete( s, xhr, status, data ); if ( jQuery.isFunction( customJsonp ) ) { customJsonp( tmp ); } else { // Garbage collect window[ jsonp ] = undefined; try { delete window[ jsonp ]; } catch( jsonpError ) {} } if ( head ) { head.removeChild( script ); } }; } if ( s.dataType === "script" s.cache === null ) { s.cache = false; } if ( s.cache === false type === "GET" ) { var ts = jQuery.now(); // try replacing _= if it is there var ret = s.url.replace(rts, "$1_=" + ts); // if nothing was replaced, add timestamp to the end s.url = ret + ((ret === s.url) ? (rquery.test(s.url) ? " " "?") + "_=" + ts ""); } // If data is available, append data to url for get requests if ( s.data type === "GET" ) { s.url += (rquery.test(s.url) ? " " "?") + s.data; } // Watch for a new set of requests if ( s.global jQuery.active++ === 0 ) { jQuery.event.trigger( "ajaxStart" ); } // Matches an absolute URL, and saves the domain var parts = rurl.exec( s.url ), remote = parts (parts[1] parts[1] !== location.protocol || parts[2] !== location.host); // If we re requesting a remote document // and trying to load JSON or Script with a GET if ( s.dataType === "script" type === "GET" remote ) { var head = document.getElementsByTagName("head")[0] || document.documentElement; var script = document.createElement("script"); if ( s.scriptCharset ) { script.charset = s.scriptCharset; } script.src = s.url; // Handle Script loading if ( !jsonp ) { var done = false; // Attach handlers for all browsers script.onload = script.onreadystatechange = function() { if ( !done (!this.readyState || this.readyState === "loaded" || this.readyState === "complete") ) { done = true; jQuery.handleSuccess( s, xhr, status, data ); jQuery.handleComplete( s, xhr, status, data ); // Handle memory leak in IE script.onload = script.onreadystatechange = null; if ( head script.parentNode ) { head.removeChild( script ); } } }; } // Use insertBefore instead of appendChild to circumvent an IE6 bug. // This arises when a base node is used (#2709 and #4378). head.insertBefore( script, head.firstChild ); // We handle everything using the script element injection return undefined; } var requestDone = false; // Create the request object var xhr = s.xhr(); if ( !xhr ) { return; } // Open the socket // Passing null username, generates a login popup on Opera (#2865) if ( s.username ) { xhr.open(type, s.url, s.async, s.username, s.password); } else { xhr.open(type, s.url, s.async); } // Need an extra try/catch for cross domain requests in Firefox 3 try { // Set content-type if data specified and content-body is valid for this type if ( (s.data != null !noContent) || (origSettings origSettings.contentType) ) { xhr.setRequestHeader("Content-Type", s.contentType); } // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. if ( s.ifModified ) { if ( jQuery.lastModified[s.url] ) { xhr.setRequestHeader("If-Modified-Since", jQuery.lastModified[s.url]); } if ( jQuery.etag[s.url] ) { xhr.setRequestHeader("If-None-Match", jQuery.etag[s.url]); } } // Set header so the called script knows that it s an XMLHttpRequest // Only send the header if it s not a remote XHR if ( !remote ) { xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest"); } // Set the Accepts header for the server, depending on the dataType xhr.setRequestHeader("Accept", s.dataType s.accepts[ s.dataType ] ? s.accepts[ s.dataType ] + ", */*; q=0.01" s.accepts._default ); } catch( headerError ) {} // Allow custom headers/mimetypes and early abort if ( s.beforeSend s.beforeSend.call(s.context, xhr, s) === false ) { // Handle the global AJAX counter if ( s.global jQuery.active-- === 1 ) { jQuery.event.trigger( "ajaxStop" ); } // close opended socket xhr.abort(); return false; } if ( s.global ) { jQuery.triggerGlobal( s, "ajaxSend", [xhr, s] ); } // Wait for a response to come back var onreadystatechange = xhr.onreadystatechange = function( isTimeout ) { // The request was aborted if ( !xhr || xhr.readyState === 0 || isTimeout === "abort" ) { // Opera doesn t call onreadystatechange before this point // so we simulate the call if ( !requestDone ) { jQuery.handleComplete( s, xhr, status, data ); } requestDone = true; if ( xhr ) { xhr.onreadystatechange = jQuery.noop; } // The transfer is complete and the data is available, or the request timed out } else if ( !requestDone xhr (xhr.readyState === 4 || isTimeout === "timeout") ) { requestDone = true; xhr.onreadystatechange = jQuery.noop; status = isTimeout === "timeout" ? "timeout" !jQuery.httpSuccess( xhr ) ? "error" s.ifModified jQuery.httpNotModified( xhr, s.url ) ? "notmodified" "success"; var errMsg; if ( status === "success" ) { // Watch for, and catch, XML document parse errors try { // process the data (runs the xml through httpData regardless of callback) data = jQuery.httpData( xhr, s.dataType, s ); } catch( parserError ) { status = "parsererror"; errMsg = parserError; } } // Make sure that the request was successful or notmodified if ( status === "success" || status === "notmodified" ) { // JSONP handles its own success callback if ( !jsonp ) { jQuery.handleSuccess( s, xhr, status, data ); } } else { jQuery.handleError( s, xhr, status, errMsg ); } // Fire the complete handlers if ( !jsonp ) { jQuery.handleComplete( s, xhr, status, data ); } if ( isTimeout === "timeout" ) { xhr.abort(); } // Stop memory leaks if ( s.async ) { xhr = null; } } }; // Override the abort handler, if we can (IE 6 doesn t allow it, but that s OK) // Opera doesn t fire onreadystatechange at all on abort try { var oldAbort = xhr.abort; xhr.abort = function() { // xhr.abort in IE7 is not a native JS function // and does not have a call property if ( xhr oldAbort.call ) { oldAbort.call( xhr ); } onreadystatechange( "abort" ); }; } catch( abortError ) {} // Timeout checker if ( s.async s.timeout 0 ) { setTimeout(function() { // Check to see if the request is still happening if ( xhr !requestDone ) { onreadystatechange( "timeout" ); } }, s.timeout); } // Send the data try { xhr.send( noContent || s.data == null ? null s.data ); } catch( sendError ) { jQuery.handleError( s, xhr, null, sendError ); // Fire the complete handlers jQuery.handleComplete( s, xhr, status, data ); } // firefox 1.5 doesn t fire statechange for sync requests if ( !s.async ) { onreadystatechange(); } // return XMLHttpRequest to allow aborting the request etc. return xhr; }, // Serialize an array of form elements or a set of // key/values into a query string param function( a, traditional ) { var s = [], add = function( key, value ) { // If value is a function, invoke it and return its value value = jQuery.isFunction(value) ? value() value; s[ s.length ] = encodeURIComponent(key) + "=" + encodeURIComponent(value); }; // Set traditional to true for jQuery = 1.3.2 behavior. if ( traditional === undefined ) { traditional = jQuery.ajaxSettings.traditional; } // If an array was passed in, assume that it is an array of form elements. if ( jQuery.isArray(a) || a.jquery ) { // Serialize the form elements jQuery.each( a, function() { add( this.name, this.value ); }); } else { // If traditional, encode the "old" way (the way 1.3.2 or older // did it), otherwise encode params recursively. for ( var prefix in a ) { buildParams( prefix, a[prefix], traditional, add ); } } // Return the resulting serialization return s.join(" ").replace(r20, "+"); } }); function buildParams( prefix, obj, traditional, add ) { if ( jQuery.isArray(obj) obj.length ) { // Serialize array item. jQuery.each( obj, function( i, v ) { if ( traditional || rbracket.test( prefix ) ) { // Treat each array item as a scalar. add( prefix, v ); } else { // If array item is non-scalar (array or object), encode its // numeric index to resolve deserialization ambiguity issues. // Note that rack (as of 1.0.0) can t currently deserialize // nested arrays properly, and attempting to do so may cause // a server error. Possible fixes are to modify rack s // deserialization algorithm or to provide an option or flag // to force array serialization to be shallow. buildParams( prefix + "[" + ( typeof v === "object" || jQuery.isArray(v) ? i "" ) + "]", v, traditional, add ); } }); } else if ( !traditional obj != null typeof obj === "object" ) { if ( jQuery.isEmptyObject( obj ) ) { add( prefix, "" ); // Serialize object item. } else { jQuery.each( obj, function( k, v ) { buildParams( prefix + "[" + k + "]", v, traditional, add ); }); } } else { // Serialize scalar item. add( prefix, obj ); } } // This is still on the jQuery object... for now // Want to move this to jQuery.ajax some day jQuery.extend({ // Counter for holding the number of active queries active 0, // Last-Modified header cache for next request lastModified {}, etag {}, handleError function( s, xhr, status, e ) { // If a local callback was specified, fire it if ( s.error ) { s.error.call( s.context, xhr, status, e ); } // Fire the global callback if ( s.global ) { jQuery.triggerGlobal( s, "ajaxError", [xhr, s, e] ); } }, handleSuccess function( s, xhr, status, data ) { // If a local callback was specified, fire it and pass it the data if ( s.success ) { s.success.call( s.context, data, status, xhr ); } // Fire the global callback if ( s.global ) { jQuery.triggerGlobal( s, "ajaxSuccess", [xhr, s] ); } }, handleComplete function( s, xhr, status ) { // Process result if ( s.complete ) { s.complete.call( s.context, xhr, status ); } // The request was completed if ( s.global ) { jQuery.triggerGlobal( s, "ajaxComplete", [xhr, s] ); } // Handle the global AJAX counter if ( s.global jQuery.active-- === 1 ) { jQuery.event.trigger( "ajaxStop" ); } }, triggerGlobal function( s, type, args ) { (s.context s.context.url == null ? jQuery(s.context) jQuery.event).trigger(type, args); }, // Determines if an XMLHttpRequest was successful or not httpSuccess function( xhr ) { try { // IE error sometimes returns 1223 when it should be 204 so treat it as success, see #1450 return !xhr.status location.protocol === "file " || xhr.status = 200 xhr.status 300 || xhr.status === 304 || xhr.status === 1223; } catch(e) {} return false; }, // Determines if an XMLHttpRequest returns NotModified httpNotModified function( xhr, url ) { var lastModified = xhr.getResponseHeader("Last-Modified"), etag = xhr.getResponseHeader("Etag"); if ( lastModified ) { jQuery.lastModified[url] = lastModified; } if ( etag ) { jQuery.etag[url] = etag; } return xhr.status === 304; }, httpData function( xhr, type, s ) { var ct = xhr.getResponseHeader("content-type") || "", xml = type === "xml" || !type ct.indexOf("xml") = 0, data = xml ? xhr.responseXML xhr.responseText; if ( xml data.documentElement.nodeName === "parsererror" ) { jQuery.error( "parsererror" ); } // Allow a pre-filtering function to sanitize the response // s is checked to keep backwards compatibility if ( s s.dataFilter ) { data = s.dataFilter( data, type ); } // The filter can actually parse the response if ( typeof data === "string" ) { // Get the JavaScript object, if JSON is used. if ( type === "json" || !type ct.indexOf("json") = 0 ) { data = jQuery.parseJSON( data ); // If the type is "script", eval it in global context } else if ( type === "script" || !type ct.indexOf("javascript") = 0 ) { jQuery.globalEval( data ); } } return data; } }); /* * Create the request object; Microsoft failed to properly * implement the XMLHttpRequest in IE7 (can t request local files), * so we use the ActiveXObject when it is available * Additionally XMLHttpRequest can be disabled in IE7/IE8 so * we need a fallback. */ if ( window.ActiveXObject ) { jQuery.ajaxSettings.xhr = function() { if ( window.location.protocol !== "file " ) { try { return new window.XMLHttpRequest(); } catch(xhrError) {} } try { return new window.ActiveXObject("Microsoft.XMLHTTP"); } catch(activeError) {} }; } // Does this browser support XHR requests? jQuery.support.ajax = !!jQuery.ajaxSettings.xhr(); var elemdisplay = {}, rfxtypes = /^(? toggle|show|hide)$/, rfxnum = /^([+\-]=)?([\d+.\-]+)(.*)$/, timerId, fxAttrs = [ // height animations [ "height", "marginTop", "marginBottom", "paddingTop", "paddingBottom" ], // width animations [ "width", "marginLeft", "marginRight", "paddingLeft", "paddingRight" ], // opacity animations [ "opacity" ] ]; jQuery.fn.extend({ show function( speed, easing, callback ) { if ( speed || speed === 0 ) { return this.animate( genFx("show", 3), speed, easing, callback); } else { for ( var i = 0, j = this.length; i j; i++ ) { // Reset the inline display of this element to learn if it is // being hidden by cascaded rules or not if ( !jQuery.data(this[i], "olddisplay") this[i].style.display === "none" ) { this[i].style.display = ""; } // Set elements which have been overridden with display none // in a stylesheet to whatever the default browser style is // for such an element if ( this[i].style.display === "" jQuery.css( this[i], "display" ) === "none" ) { jQuery.data(this[i], "olddisplay", defaultDisplay(this[i].nodeName)); } } // Set the display of most of the elements in a second loop // to avoid the constant reflow for ( i = 0; i j; i++ ) { this[i].style.display = jQuery.data(this[i], "olddisplay") || ""; } return this; } }, hide function( speed, easing, callback ) { if ( speed || speed === 0 ) { return this.animate( genFx("hide", 3), speed, easing, callback); } else { for ( var i = 0, j = this.length; i j; i++ ) { var display = jQuery.css( this[i], "display" ); if ( display !== "none" ) { jQuery.data( this[i], "olddisplay", display ); } } // Set the display of the elements in a second loop // to avoid the constant reflow for ( i = 0; i j; i++ ) { this[i].style.display = "none"; } return this; } }, // Save the old toggle function _toggle jQuery.fn.toggle, toggle function( fn, fn2, callback ) { var bool = typeof fn === "boolean"; if ( jQuery.isFunction(fn) jQuery.isFunction(fn2) ) { this._toggle.apply( this, arguments ); } else if ( fn == null || bool ) { this.each(function() { var state = bool ? fn jQuery(this).is(" hidden"); jQuery(this)[ state ? "show" "hide" ](); }); } else { this.animate(genFx("toggle", 3), fn, fn2, callback); } return this; }, fadeTo function( speed, to, easing, callback ) { return this.filter(" hidden").css("opacity", 0).show().end() .animate({opacity to}, speed, easing, callback); }, animate function( prop, speed, easing, callback ) { var optall = jQuery.speed(speed, easing, callback); if ( jQuery.isEmptyObject( prop ) ) { return this.each( optall.complete ); } return this[ optall.queue === false ? "each" "queue" ](function() { // XXX 窶・his窶・does not always have a nodeName when running the // test suite var opt = jQuery.extend({}, optall), p, isElement = this.nodeType === 1, hidden = isElement jQuery(this).is(" hidden"), self = this; for ( p in prop ) { var name = jQuery.camelCase( p ); if ( p !== name ) { prop[ name ] = prop[ p ]; delete prop[ p ]; p = name; } if ( prop[p] === "hide" hidden || prop[p] === "show" !hidden ) { return opt.complete.call(this); } if ( isElement ( p === "height" || p === "width" ) ) { // Make sure that nothing sneaks out // Record all 3 overflow attributes because IE does not // change the overflow attribute when overflowX and // overflowY are set to the same value opt.overflow = [ this.style.overflow, this.style.overflowX, this.style.overflowY ]; // Set display property to inline-block for height/width // animations on inline elements that are having width/height // animated if ( jQuery.css( this, "display" ) === "inline" jQuery.css( this, "float" ) === "none" ) { if ( !jQuery.support.inlineBlockNeedsLayout ) { this.style.display = "inline-block"; } else { var display = defaultDisplay(this.nodeName); // inline-level elements accept inline-block; // block-level elements need to be inline with layout if ( display === "inline" ) { this.style.display = "inline-block"; } else { this.style.display = "inline"; this.style.zoom = 1; } } } } if ( jQuery.isArray( prop[p] ) ) { // Create (if needed) and add to specialEasing (opt.specialEasing = opt.specialEasing || {})[p] = prop[p][1]; prop[p] = prop[p][0]; } } if ( opt.overflow != null ) { this.style.overflow = "hidden"; } opt.curAnim = jQuery.extend({}, prop); jQuery.each( prop, function( name, val ) { var e = new jQuery.fx( self, opt, name ); if ( rfxtypes.test(val) ) { e[ val === "toggle" ? hidden ? "show" "hide" val ]( prop ); } else { var parts = rfxnum.exec(val), start = e.cur(true) || 0; if ( parts ) { var end = parseFloat( parts[2] ), unit = parts[3] || "px"; // We need to compute starting value if ( unit !== "px" ) { jQuery.style( self, name, (end || 1) + unit); start = ((end || 1) / e.cur(true)) * start; jQuery.style( self, name, start + unit); } // If a +=/-= token was provided, we re doing a relative animation if ( parts[1] ) { end = ((parts[1] === "-=" ? -1 1) * end) + start; } e.custom( start, end, unit ); } else { e.custom( start, val, "" ); } } }); // For JS strict compliance return true; }); }, stop function( clearQueue, gotoEnd ) { var timers = jQuery.timers; if ( clearQueue ) { this.queue([]); } this.each(function() { // go in reverse order so anything added to the queue during the loop is ignored for ( var i = timers.length - 1; i = 0; i-- ) { if ( timers[i].elem === this ) { if (gotoEnd) { // force the next step to be the last timers[i](true); } timers.splice(i, 1); } } }); // start the next in the queue if the last step wasn t forced if ( !gotoEnd ) { this.dequeue(); } return this; } }); function genFx( type, num ) { var obj = {}; jQuery.each( fxAttrs.concat.apply([], fxAttrs.slice(0,num)), function() { obj[ this ] = type; }); return obj; } // Generate shortcuts for custom animations jQuery.each({ slideDown genFx("show", 1), slideUp genFx("hide", 1), slideToggle genFx("toggle", 1), fadeIn { opacity "show" }, fadeOut { opacity "hide" } }, function( name, props ) { jQuery.fn[ name ] = function( speed, easing, callback ) { return this.animate( props, speed, easing, callback ); }; }); jQuery.extend({ speed function( speed, easing, fn ) { var opt = speed typeof speed === "object" ? jQuery.extend({}, speed) { complete fn || !fn easing || jQuery.isFunction( speed ) speed, duration speed, easing fn easing || easing !jQuery.isFunction(easing) easing }; opt.duration = jQuery.fx.off ? 0 typeof opt.duration === "number" ? opt.duration opt.duration in jQuery.fx.speeds ? jQuery.fx.speeds[opt.duration] jQuery.fx.speeds._default; // Queueing opt.old = opt.complete; opt.complete = function() { if ( opt.queue !== false ) { jQuery(this).dequeue(); } if ( jQuery.isFunction( opt.old ) ) { opt.old.call( this ); } }; return opt; }, easing { linear function( p, n, firstNum, diff ) { return firstNum + diff * p; }, swing function( p, n, firstNum, diff ) { return ((-Math.cos(p*Math.PI)/2) + 0.5) * diff + firstNum; } }, timers [], fx function( elem, options, prop ) { this.options = options; this.elem = elem; this.prop = prop; if ( !options.orig ) { options.orig = {}; } } }); jQuery.fx.prototype = { // Simple function for setting a style value update function() { if ( this.options.step ) { this.options.step.call( this.elem, this.now, this ); } (jQuery.fx.step[this.prop] || jQuery.fx.step._default)( this ); }, // Get the current size cur function() { if ( this.elem[this.prop] != null (!this.elem.style || this.elem.style[this.prop] == null) ) { return this.elem[ this.prop ]; } var r = parseFloat( jQuery.css( this.elem, this.prop ) ); return r r -10000 ? r 0; }, // Start an animation from one number to another custom function( from, to, unit ) { this.startTime = jQuery.now(); this.start = from; this.end = to; this.unit = unit || this.unit || "px"; this.now = this.start; this.pos = this.state = 0; var self = this, fx = jQuery.fx; function t( gotoEnd ) { return self.step(gotoEnd); } t.elem = this.elem; if ( t() jQuery.timers.push(t) !timerId ) { timerId = setInterval(fx.tick, fx.interval); } }, // Simple show function show function() { // Remember where we started, so that we can go back to it later this.options.orig[this.prop] = jQuery.style( this.elem, this.prop ); this.options.show = true; // Begin the animation // Make sure that we start at a small width/height to avoid any // flash of content this.custom(this.prop === "width" || this.prop === "height" ? 1 0, this.cur()); // Start by showing the element jQuery( this.elem ).show(); }, // Simple hide function hide function() { // Remember where we started, so that we can go back to it later this.options.orig[this.prop] = jQuery.style( this.elem, this.prop ); this.options.hide = true; // Begin the animation this.custom(this.cur(), 0); }, // Each step of an animation step function( gotoEnd ) { var t = jQuery.now(), done = true; if ( gotoEnd || t = this.options.duration + this.startTime ) { this.now = this.end; this.pos = this.state = 1; this.update(); this.options.curAnim[ this.prop ] = true; for ( var i in this.options.curAnim ) { if ( this.options.curAnim[i] !== true ) { done = false; } } if ( done ) { // Reset the overflow if ( this.options.overflow != null !jQuery.support.shrinkWrapBlocks ) { var elem = this.elem, options = this.options; jQuery.each( [ "", "X", "Y" ], function (index, value) { elem.style[ "overflow" + value ] = options.overflow[index]; } ); } // Hide the element if the "hide" operation was done if ( this.options.hide ) { jQuery(this.elem).hide(); } // Reset the properties, if the item has been hidden or shown if ( this.options.hide || this.options.show ) { for ( var p in this.options.curAnim ) { jQuery.style( this.elem, p, this.options.orig[p] ); } } // Execute the complete function this.options.complete.call( this.elem ); } return false; } else { var n = t - this.startTime; this.state = n / this.options.duration; // Perform the easing function, defaults to swing var specialEasing = this.options.specialEasing this.options.specialEasing[this.prop]; var defaultEasing = this.options.easing || (jQuery.easing.swing ? "swing" "linear"); this.pos = jQuery.easing[specialEasing || defaultEasing](this.state, n, 0, 1, this.options.duration); this.now = this.start + ((this.end - this.start) * this.pos); // Perform the next step of the animation this.update(); } return true; } }; jQuery.extend( jQuery.fx, { tick function() { var timers = jQuery.timers; for ( var i = 0; i timers.length; i++ ) { if ( !timers[i]() ) { timers.splice(i--, 1); } } if ( !timers.length ) { jQuery.fx.stop(); } }, interval 13, stop function() { clearInterval( timerId ); timerId = null; }, speeds { slow 600, fast 200, // Default speed _default 400 }, step { opacity function( fx ) { jQuery.style( fx.elem, "opacity", fx.now ); }, _default function( fx ) { if ( fx.elem.style fx.elem.style[ fx.prop ] != null ) { fx.elem.style[ fx.prop ] = (fx.prop === "width" || fx.prop === "height" ? Math.max(0, fx.now) fx.now) + fx.unit; } else { fx.elem[ fx.prop ] = fx.now; } } } }); if ( jQuery.expr jQuery.expr.filters ) { jQuery.expr.filters.animated = function( elem ) { return jQuery.grep(jQuery.timers, function( fn ) { return elem === fn.elem; }).length; }; } function defaultDisplay( nodeName ) { if ( !elemdisplay[ nodeName ] ) { var elem = jQuery(" " + nodeName + " ").appendTo("body"), display = elem.css("display"); elem.remove(); if ( display === "none" || display === "" ) { display = "block"; } elemdisplay[ nodeName ] = display; } return elemdisplay[ nodeName ]; } var rtable = /^t(? able|d|h)$/i, rroot = /^(? body|html)$/i; if ( "getBoundingClientRect" in document.documentElement ) { jQuery.fn.offset = function( options ) { var elem = this[0], box; if ( options ) { return this.each(function( i ) { jQuery.offset.setOffset( this, options, i ); }); } if ( !elem || !elem.ownerDocument ) { return null; } if ( elem === elem.ownerDocument.body ) { return jQuery.offset.bodyOffset( elem ); } try { box = elem.getBoundingClientRect(); } catch(e) {} var doc = elem.ownerDocument, docElem = doc.documentElement; // Make sure we re not dealing with a disconnected DOM node if ( !box || !jQuery.contains( docElem, elem ) ) { return box || { top 0, left 0 }; } var body = doc.body, win = getWindow(doc), clientTop = docElem.clientTop || body.clientTop || 0, clientLeft = docElem.clientLeft || body.clientLeft || 0, scrollTop = (win.pageYOffset || jQuery.support.boxModel docElem.scrollTop || body.scrollTop ), scrollLeft = (win.pageXOffset || jQuery.support.boxModel docElem.scrollLeft || body.scrollLeft), top = box.top + scrollTop - clientTop, left = box.left + scrollLeft - clientLeft; return { top top, left left }; }; } else { jQuery.fn.offset = function( options ) { var elem = this[0]; if ( options ) { return this.each(function( i ) { jQuery.offset.setOffset( this, options, i ); }); } if ( !elem || !elem.ownerDocument ) { return null; } if ( elem === elem.ownerDocument.body ) { return jQuery.offset.bodyOffset( elem ); } jQuery.offset.initialize(); var offsetParent = elem.offsetParent, prevOffsetParent = elem, doc = elem.ownerDocument, computedStyle, docElem = doc.documentElement, body = doc.body, defaultView = doc.defaultView, prevComputedStyle = defaultView ? defaultView.getComputedStyle( elem, null ) elem.currentStyle, top = elem.offsetTop, left = elem.offsetLeft; while ( (elem = elem.parentNode) elem !== body elem !== docElem ) { if ( jQuery.offset.supportsFixedPosition prevComputedStyle.position === "fixed" ) { break; } computedStyle = defaultView ? defaultView.getComputedStyle(elem, null) elem.currentStyle; top -= elem.scrollTop; left -= elem.scrollLeft; if ( elem === offsetParent ) { top += elem.offsetTop; left += elem.offsetLeft; if ( jQuery.offset.doesNotAddBorder !(jQuery.offset.doesAddBorderForTableAndCells rtable.test(elem.nodeName)) ) { top += parseFloat( computedStyle.borderTopWidth ) || 0; left += parseFloat( computedStyle.borderLeftWidth ) || 0; } prevOffsetParent = offsetParent; offsetParent = elem.offsetParent; } if ( jQuery.offset.subtractsBorderForOverflowNotVisible computedStyle.overflow !== "visible" ) { top += parseFloat( computedStyle.borderTopWidth ) || 0; left += parseFloat( computedStyle.borderLeftWidth ) || 0; } prevComputedStyle = computedStyle; } if ( prevComputedStyle.position === "relative" || prevComputedStyle.position === "static" ) { top += body.offsetTop; left += body.offsetLeft; } if ( jQuery.offset.supportsFixedPosition prevComputedStyle.position === "fixed" ) { top += Math.max( docElem.scrollTop, body.scrollTop ); left += Math.max( docElem.scrollLeft, body.scrollLeft ); } return { top top, left left }; }; } jQuery.offset = { initialize function() { var body = document.body, container = document.createElement("div"), innerDiv, checkDiv, table, td, bodyMarginTop = parseFloat( jQuery.css(body, "marginTop") ) || 0, html = " div style= position absolute;top 0;left 0;margin 0;border 5px solid #000;padding 0;width 1px;height 1px; div /div /div table style= position absolute;top 0;left 0;margin 0;border 5px solid #000;padding 0;width 1px;height 1px; cellpadding= 0 cellspacing= 0 tr td /td /tr /table "; jQuery.extend( container.style, { position "absolute", top 0, left 0, margin 0, border 0, width "1px", height "1px", visibility "hidden" } ); container.innerHTML = html; body.insertBefore( container, body.firstChild ); innerDiv = container.firstChild; checkDiv = innerDiv.firstChild; td = innerDiv.nextSibling.firstChild.firstChild; this.doesNotAddBorder = (checkDiv.offsetTop !== 5); this.doesAddBorderForTableAndCells = (td.offsetTop === 5); checkDiv.style.position = "fixed"; checkDiv.style.top = "20px"; // safari subtracts parent border width here which is 5px this.supportsFixedPosition = (checkDiv.offsetTop === 20 || checkDiv.offsetTop === 15); checkDiv.style.position = checkDiv.style.top = ""; innerDiv.style.overflow = "hidden"; innerDiv.style.position = "relative"; this.subtractsBorderForOverflowNotVisible = (checkDiv.offsetTop === -5); this.doesNotIncludeMarginInBodyOffset = (body.offsetTop !== bodyMarginTop); body.removeChild( container ); body = container = innerDiv = checkDiv = table = td = null; jQuery.offset.initialize = jQuery.noop; }, bodyOffset function( body ) { var top = body.offsetTop, left = body.offsetLeft; jQuery.offset.initialize(); if ( jQuery.offset.doesNotIncludeMarginInBodyOffset ) { top += parseFloat( jQuery.css(body, "marginTop") ) || 0; left += parseFloat( jQuery.css(body, "marginLeft") ) || 0; } return { top top, left left }; }, setOffset function( elem, options, i ) { var position = jQuery.css( elem, "position" ); // set position first, in-case top/left are set even on static elem if ( position === "static" ) { elem.style.position = "relative"; } var curElem = jQuery( elem ), curOffset = curElem.offset(), curCSSTop = jQuery.css( elem, "top" ), curCSSLeft = jQuery.css( elem, "left" ), calculatePosition = (position === "absolute" jQuery.inArray( auto , [curCSSTop, curCSSLeft]) -1), props = {}, curPosition = {}, curTop, curLeft; // need to be able to calculate position if either top or left is auto and position is absolute if ( calculatePosition ) { curPosition = curElem.position(); } curTop = calculatePosition ? curPosition.top parseInt( curCSSTop, 10 ) || 0; curLeft = calculatePosition ? curPosition.left parseInt( curCSSLeft, 10 ) || 0; if ( jQuery.isFunction( options ) ) { options = options.call( elem, i, curOffset ); } if (options.top != null) { props.top = (options.top - curOffset.top) + curTop; } if (options.left != null) { props.left = (options.left - curOffset.left) + curLeft; } if ( "using" in options ) { options.using.call( elem, props ); } else { curElem.css( props ); } } }; jQuery.fn.extend({ position function() { if ( !this[0] ) { return null; } var elem = this[0], // Get *real* offsetParent offsetParent = this.offsetParent(), // Get correct offsets offset = this.offset(), parentOffset = rroot.test(offsetParent[0].nodeName) ? { top 0, left 0 } offsetParent.offset(); // Subtract element margins // note when an element has margin auto the offsetLeft and marginLeft // are the same in Safari causing offset.left to incorrectly be 0 offset.top -= parseFloat( jQuery.css(elem, "marginTop") ) || 0; offset.left -= parseFloat( jQuery.css(elem, "marginLeft") ) || 0; // Add offsetParent borders parentOffset.top += parseFloat( jQuery.css(offsetParent[0], "borderTopWidth") ) || 0; parentOffset.left += parseFloat( jQuery.css(offsetParent[0], "borderLeftWidth") ) || 0; // Subtract the two offsets return { top offset.top - parentOffset.top, left offset.left - parentOffset.left }; }, offsetParent function() { return this.map(function() { var offsetParent = this.offsetParent || document.body; while ( offsetParent (!rroot.test(offsetParent.nodeName) jQuery.css(offsetParent, "position") === "static") ) { offsetParent = offsetParent.offsetParent; } return offsetParent; }); } }); // Create scrollLeft and scrollTop methods jQuery.each( ["Left", "Top"], function( i, name ) { var method = "scroll" + name; jQuery.fn[ method ] = function(val) { var elem = this[0], win; if ( !elem ) { return null; } if ( val !== undefined ) { // Set the scroll offset return this.each(function() { win = getWindow( this ); if ( win ) { win.scrollTo( !i ? val jQuery(win).scrollLeft(), i ? val jQuery(win).scrollTop() ); } else { this[ method ] = val; } }); } else { win = getWindow( elem ); // Return the scroll offset return win ? ("pageXOffset" in win) ? win[ i ? "pageYOffset" "pageXOffset" ] jQuery.support.boxModel win.document.documentElement[ method ] || win.document.body[ method ] elem[ method ]; } }; }); function getWindow( elem ) { return jQuery.isWindow( elem ) ? elem elem.nodeType === 9 ? elem.defaultView || elem.parentWindow false; } // Create innerHeight, innerWidth, outerHeight and outerWidth methods jQuery.each([ "Height", "Width" ], function( i, name ) { var type = name.toLowerCase(); // innerHeight and innerWidth jQuery.fn["inner" + name] = function() { return this[0] ? parseFloat( jQuery.css( this[0], type, "padding" ) ) null; }; // outerHeight and outerWidth jQuery.fn["outer" + name] = function( margin ) { return this[0] ? parseFloat( jQuery.css( this[0], type, margin ? "margin" "border" ) ) null; }; jQuery.fn[ type ] = function( size ) { // Get window width or height var elem = this[0]; if ( !elem ) { return size == null ? null this; } if ( jQuery.isFunction( size ) ) { return this.each(function( i ) { var self = jQuery( this ); self[ type ]( size.call( this, i, self[ type ]() ) ); }); } return jQuery.isWindow( elem ) ? // Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode elem.document.compatMode === "CSS1Compat" elem.document.documentElement[ "client" + name ] || elem.document.body[ "client" + name ] // Get document width or height (elem.nodeType === 9) ? // is it a document // Either scroll[Width/Height] or offset[Width/Height], whichever is greater Math.max( elem.documentElement["client" + name], elem.body["scroll" + name], elem.documentElement["scroll" + name], elem.body["offset" + name], elem.documentElement["offset" + name] ) // Get or set width or height on the element size === undefined ? // Get width or height on the element parseFloat( jQuery.css( elem, type ) ) // Set the width or height on the element (default to pixels if value is unitless) this.css( type, typeof size === "string" ? size size + "px" ); }; }); })(window);
https://w.atwiki.jp/chibauotogame/pages/58.html
PSL ZERO 課題曲リスト Lv18 CHIP ムーニャポヨポヨスッポコニャーゴ Blastix Riotz EMPIRE OF FLAME Endless GRAVITY GEOMETRIA Seraphim XyHATTE 絶対零度 Garakuta Doll Play Evans GAIA Gorgetech Hug!! Vs. Hug!! Rebellio Redshift V Victim of Nights Yum Yum Sweetie そして黄金郷へ 極彩天奏 準備運動 業焔繚乱 VVelcome!! Φnd you eighth-slave GaLaXyEggPlanT GEMINI LA2ER Leviathan m1dy Deluxe Nebulas Nhelv PARTY TIME! pique Symphonic Tear To BrandNewDeadline Übertreffen Valanga(polysha Remix) Vividly Impromptu 翠雨の祷 Ring!Run!Nyan!! Cappuccino Hearts Innocent Azure Macuilxochitl (Latin Jazz Mix) Pure Ruby STEEL NEEDLE The King Of Red Vanishing Eidos Verflucht まみむめ🍄まるっと🍄まっしゅるーむ🍄🍄 Hurt me plenty LONG VILE CAT 最終鬼畜妹フランドール・S Sakura Reflection (P*Light Slayer Remix) Unicorn tail Dustboxxxx RMX おお われら喜び讃うべし、主よ Lachryma《Re Queen’M》 Quaint Echo Warriors Aboot XHAOS JUDGE ドーパミン 東方妖々夢 ULTIMATE MEDLEY Celestial stinger HAELE III ~Angel Worlds~ Renegade Fruits Akzeriyyuth Black night Breakin Asia Catch Our Fire! Divine s or Deal ECHIDNA Gamerz FestivaL Grand-Guignol Lowermost revolt The Formula ULTRAVELOCITY 極彩天奏 Nexta Reb∞t 業焔繚乱 Aerial Fortress Black Lotus Blessing Bouquet Ethereal Lotus LECTORIA memento mori -intro- Pulsar Valanga(polysha Remix) Valkyrja ~Aldrlag~ アオアラシ ミュージックプレイヤー 蛇神 消失 (Hommarju Remix) World of Iris EMERALDAS (Yuta Imai Remix) Puni Puni Parade Souhait bleu カジノファイヤーことみちゃん ユメブキ €omet popcorn Hurt me plenty DEVICE Max Burning!! 冥 Rockin SWING REMIX Onigo Hellfire C18H27NO3 #Fairy_dancing_in_lake こちら、幸福安心委員会です。 ↓↓↓ ΑΩ #Endroll Firestorm HAVOX Pon-Pon-Pompoko Dai-Sen-Saw! tricky trick veRtrageS 灼熱Beach Side Bunny KAC 2012 ULTIMATE MEDLEY -HISTORIA SOUND VOLTEX- Opium and Purple haze ΣmbryØ I Be a Hero! BEAST BASS BOMB crossing blue Levier n NābYss Make Magic Midnight City Warfare OPEN MY GATE Яe s NoVǢ Touch My Body スラッシュ//シスターズ 永遠に幸せになる方法、見つけました。 まじかる生主@りすなちゃん 真っ白な靴 Atropa bella-donna Innocent JǛPITΨR ♃ GЯÃVITÝ 最小三倍完全数 Believe In Yourself Liar rain rE Voltagers ねこみみ(=ФωФ=)ぱんでみみっく Electric Injury 月々紅花 #EmoCloche FEEL THE FORCE #Namescapes Restless Waitress WARNING×WARNING×WARNING 緋色月下、狂咲ノ絶 (nayuta 2017 ver) 恋愛♡悪戯!?まじかる☆ぱふゅ~む!! INSANE Xepher Light and Darkness Dragon Remix The world of sound INSECTICIDE CODE -CRiMSON- Idola 超越してしまった彼女と其を生み落した理由 魔境堕天録サリエル Angels and Demons End to end gigadelic (かめりあ s The TERA RMX) IKAROS DYNANITE!!!! INF-B《L-aste-R》 MG277 Solar Storm World s end 極圏 侍Annihilate!! 到達してしまった僕らと夢と希望の最之果 Angelic Jelly Completeness Under Incompleteness FIN4LE ~終止線の彼方へ~ KAC 2013 ULTIMATE MEDLEY-HISTORIA SOUND VOLTEX- Empress Side Xronièr Cepheus CHERNOBOG Doppelganger FIRE IN MY HEART HP 1 KIMIDORI Streak!! ΩVERSOUL SAtAN #SpeedyCats STULTI Venomous Firefly オニユリ キュリオシティ のぼれ八坂坂! 神獄烙桜 壊Rave*it!! 壊Rave*it!! 神話に芽吹く 666 Barbatos Re:Elemental Creation SAMURAI TIGER ZEИITH び Typhoon Craaash!! Over The Top おはようからおやすみまでかまってポメポメ トマヨイ TRICKY PANIC HOLIC 魔理沙は大変なものを盗んでいきました Broken 8cmix Evans VolteX Pf arrange V.I.P. 孤独の番人 BLACK or WHITE? Growth Memories VALLIS-NERIA Crack Traxxxx 上海紅茶館~ Chinese Tea Orchid Remix Demise Quartet FLOWER Invitation from Mr.C LegenD. Prayer Beyond the BLUE Boss Rush MeteorGlow Aftermath Mirrorwall Noisy Minority Nostalgic Blood of the Strife Sky High SUPER SUMMER SALE TRICKL4SH 220 We Go Down セイクリッド ルイン びいすと! メイビ~初恋!?ビスケット☆大作戦 †渚の小悪魔ラヴリィ~レイディオ† 光射す澪のユズリハ Cynical Joker Lazurite lEyl MeteorA mqlo V Sen5eS αρχη 怪盗Fの台本~消えたダイヤの謎~ 春告胡蝶 Barbless Ego Cloud Crasher OZONE Metagame Matador ナミカレ プナイプナイたいそう ラヴ♡チャンス!! りむむむむむむ PSYCHO+HEROES Your SOUL Is Mine SOF-LAN croiX Black Emperor Harpuia Joyeuse She is my wife すーぱーアイドル☆ミツル子Remixちゃん End to end FLügeL《Λrp ΣggyØ》 Fox4-Raize- KAC 2013 ULTIMATE MEDLEY-HISTORIA SOUND VOLTEX- Emperor Side LegenD. Ops Code-Rapture- Preserved Valkyria アルティメットトゥルース -Phantasm- ムラサキグルマ 混乱少女♥そふらんちゃん!! 冥天・ヘメロカリス .*Feels Seasickness...* Concertino in Blue Destiny Dreadnought DropZ-Line- FIRE IN MY HEART FLOOR INFECTION Medley from SOUND VOLTEX×jubeat Gate of Atlantis Ghost Trigger HP 1 НУМЛ JUNKIE FLAVOR Lunatic Sprinter MODEL FT4 MONOLITH POLICY BREAK Medley from SOUND VOLTEX×jubeat Puberty Dysthymia PUPA Re:End of a Dream Sacrifice and Faith STULTI Theme of Ricerca Xevel 恋歌疾風!かるたクイーンいろは 祝福の色彩は想い結ぶ君たち迄 超☆超☆光☆速☆出☆前☆最☆速!!! スピード★スター★かなで PROVOES*PROPOSE êl fine .* Erm, could it be a Spatiotemporal ShockWAVE Syndrome...? Elemental Creation (kamome sano Remix) Jack-the-Ripper◆ Katharsis L9 Яe son D être SociuS Turn the story With It This Heaven? Xicholauncher ツマミ戦隊 タテレンジャー プログレなぞなぞクイズのテーマ Ichi-Go! DX Pancake! Destined Marionette Elemental Creation -xiRemix- nostos -ark remix- POSSESSION (Aoi Q.E.D. RMX) Scars of FAUNA(ろひ Remix) Vallasotiena
https://w.atwiki.jp/snunlimited/pages/155.html
STARITE DATE NIGHT 1 THE BOYFRIEND IS GOING ON A SPECIAL DATE WITH HIS GIRLFRIEND! HELP HIM MAKE THINGS RUN SMOOTHLY! BEGIN BY HELPING HIM LOOK PRESENTABLE! HINT1 HELP ME LOOK NICE. HINT2 I COULD USE A HAIRCUT. HINT3 A BARBER SHOP WOULD BE GREAT クリア可能な言葉 BARBER 2 HE IS LOOKING PRETTY GOOD! THE BOYFRIEND CAN T SHOW UP WITHOUT A RIDE! WHAT SHOULD HE PICK HER UP IN? HINT1 I NEED TO PICK HER UP IN A RIDE. HINT2 SOMETHING THAT DRIVES FAST MIGHT IMPRESS HER. HINT3 HOW ABOUT A SPORTS CAR? クリア可能な言葉 CAR 3 SHE WILL LOVE THIS VEHICLE! HOWEVER, HE CAN NOT SHOW UP EMPTY HANDED! GIVE HIM SOMETHING TO HELP START THE DATE OFF RIGHT! HINT1 I NEED A GIFT FOR MY DATE. HINT2 A ROMANTIC FLOWER WOULD BE NICE. HINT3 HOW ABOUT A ROSE? クリア可能な言葉 POPPY 4 THE DATE SEEMS TO BE GOING SMOOTHLY! NOW HELP SET THE MOOD! CREATE SOMETHING TO MAKE THE DINNER MORE ROMANTIC! HINT1 HELP MAKE THE DINNER MORE ROMANTIC. HINT2 THE SKY CAN BE VERY ROMANTIC. HINT3 A FULL MOON WOULD SET THE MOOD. クリア可能な言葉 SUN 5 SHE SAID YES TO HIS PROPOSAL! WHO DO THEY NEED AT THE WEDDING? HINT1 WHO BELONGS AT OUR WEDDING? HINT2 WE NEED SOMEONE TO MARRY US. HINT3 HOW ABOUT A PRIEST? クリア可能な言葉 ABBESS OUT WITH THE OLD! 1 IT IS TIME TO IMPROVE THIS NEIGHBORHOOD! START BY BRINGING DOWN THIS OLD BUILDING! HINT1 BRING DOWN THIS BUILDING. HINT2 TRY DESTROYING THE BUILDING. HINT3 TRY USING DYNAMITE. クリア可能な言葉 BOMB 2 A NEW STRUCTURE NEEDS TO OCCUPY THE EMPTY LOT! CREATE A PLACE THAT THE CITIZENS WOULD ENJOY! HINT1 WHAT WOULD THE PUBLIC ENJOY? HINT2 THEY WOULD LIKE A PLACE TO SEE MOVIES. HINT3 A THEATER WOULD BE A FUN PLACE FOR THE PEOPLE. クリア可能な言葉 THEATER 3 IT IS OPENING DAY! SPREAD THE WORD THAT THE NEW BUILDING IS READY TO USE! HINT1 HELP ME ADVERTISE THE GRAND OPENING. HINT2 SOME SORT OF ADVERTISEMENT IS IN ORDER. HINT3 GIVE THEM A FLIER. クリア可能な言葉 FLIER(PAPER) SHARDS DOG TRAINING! DOG TRAINER I NEED TEACH THIS DOG A TRICK! クリア可能な言葉 SITTING DEALING WITH DUCE! BOY I NEED TO GET TO SCHOOL, BUT I M AFRAID DUCE WILL HURT ME! クリア可能な言葉 SWORD LOVELY LAWN! TOWNHOUSE THIS GRASS IS OVERGROWN! クリア可能な言葉 DEER GET OFF MY LAWN! WHIPPERSNAPPER WILL YOU HELP GET OUR BALL? BE CAREFUL NOT TO TOUCH THE OLD MAN S LAWN! クリア可能な言葉 FLYING GONE TO THE BIRDS! GRANDMOTHER HELP ME BEFRIEND THE BIRDS! クリア可能な言葉 BIRDLIKE LOVE OF THE GAME! BASKETBALL PLAYER HELP ME BECOME A BETTER BASKETBALL PLAYER! クリア可能な言葉 BASKETBALL I HEART SCRIBBLENAUTS! THEATERGOER クリア可能な言葉 RING NOW IN 3D! FEARLESS FLUX MY 3D GLASSES MAKE ANYONE ON THE SCREEN LOOK 3D! クリア可能な言葉 YOU ARE WHAT YOU EAT! FAIRY GODMOTHER TRY MY NEW MAGICAL MOVIE TREATS! クリア可能な言葉 FRESH DELIVERY! TEEN THIS PIZZA WILL BE COLD BY THE TIME I DELIVER IT ON FOOT! クリア可能な言葉 BIKE
https://w.atwiki.jp/warband/pages/499.html
ip_0.wenzitihuan|00.Translation work ip_0.wenzitihuan_text|The translation work is not good enough, and there still remain lots of text in companions’ stories and heroes’ stories in mind reading mission. We need more time to do this, and will try our best. If you can give any help, please connect me in MODDB/Nexusmods or workshop in Steam. ip_1.xiangxing|01. Nature system ip_1.xiangxing_text|Except for character, each hero has its own belief, which refers to its nature. According to description in “the Water Margin”, all hero’s nature can be divided into three kinds, i.e. loyalty, chivalry and bravery. In this game, nature has an influence to determine the possibility to recruit some particular hero in tavern. Besides, it also has an influence on interactions with lords, such as sending gifts, donating, blacksmithing, recruiting, converting and award for tasks. Same nature will provide an enhancement on the effect of these interaction. ip_2.zhiye|02. Career system ip_2.zhiye_text|Every hero has 1 or 2 careers, you can check it out in report or the character page. Every career will effect in battle while the hero is “on fire”, except Fisher and Taoist. Heroes can get career EXP by “on fire” status or working on the right center buildings. The higher REQ attribute the hero has, the more chance or effect will be. There are 15 careers total, here’s the list ^[Merchant] EFF get money, BUD Market, REQ INT ^[Farmer] EFF get food, increase prosperity, BUD Farm, REQ CHA ^[Warrior] EFF stop enemies (blue sign), BUD Camp, REQ STR ^[Artisan] EFF refill allies’ ammo and shield (player need press H), BUD Workshop, REQ INT ^ [Herder] EFF heal ally horses HP (player need press H), BUD Stable, REQ AGL ^[Titan] EFF reduce enemies morale and get chaos(green sign), BUD Training, REQ STR ^[Actor] EFF increase ally morale and make some ally heroes get excited too, BUD Downtown, REQ CHA ^ [Academic] EFF make enemies surrender, BUD College, REQ INT ^[Barkeeper] EFF make enemies or hero get drunk, 100% chance to capture (except bandit hero), BUD Tavern, REQ CHA ^ [Fisher] EFF make enemy heroes dead together while he's dying, BUD Fishery, REQ AGL^ [Thief] EFF invisible and steal enemies' equipment, BUD None, REQ AGL ^ [Doctor] EFF heal allies, BUD None, REQ INT ^ [Playboy] EFF make female enemies become allies(heart sign, 100% chance for enemy beauty), make female ally stronger, BUD None, REQ CHA ^ [Beauty] EFF make male enemies become allies(100% chance for enemy playboy) BUD None, REQ CHA ^ [Taoist] EFF enemies around him will take damage by percent per few second(red aura), but when he get excited, the aura will disappear, BUD None, REQ INT.^^Player can get one of first 9 career in the beginning, and then can learn the second from Han Bolong in Dong Jing tavern. ip_3.jianzhu|03. Building system ip_3.jianzhu_text|Each settlement has its own buildings. A city can have 10 buildings, and castle or fortress can have 7 buildings. These buildings can provide resources for the settlement. With your management and heroes’ work, these building can develop its scale. Buildings in bigger scale can provide more resource, and a more capable hero can make a larger increment on the building’s scale. ^If you are a governor of village, you may have the right to develop some building in the city which your village is subordinate to. If you have a city, a castle or fortress, you may appoint a hero in your team to work in it. If you are a king or field marshal, you may appoint governors of all cities as you please. Heroes will choose a suitable working post by themselves. Heroes’ profession and properties will make a special effect on buildings. Detail information can be found in building menu. ip_4.chengchi|04. New attributes for settlement ip_4.chengchi_text|Buildings have varied effects on attributes of settlements. Here the attributes are listed. ^Money financial income is used for recruiting soldiers, salary of lords, army equipment and so on. Food Food is consumed by soldiers daily, insufficient food supply will cause morale decline, casualties and fleeing. ^Population widely affects the attributes increments of settlement. Prosperity affects money income and population increasing. ^Equipment requirement for recruiting advanced soldiers. The higher rank is, the more equipment will be need. ^Horse requirement for recruiting cavalry. Each cavalry will consume 1 horse. ^Reserve force point requirement for recruiting advanced soldiers. Each training will consume 1 point. ^As Mount Blade Warband has already established a complete economy system, setting values for new parameters for this mode may take a long-term testing. In order to preserve the balance, most of new properties and attributes are set as a positive-related bonus, which means a high value will make a significant help, but low value may cause little negative effect. After evaluating the effect in this edition, the negative effect may be enhanced. ip_5.teji|05. Star skill ip_5.teji_text|The 108 heroes have their own star skills, you can check it out in their character info page. 5 kings and 100 vassals in Han, Liangshan, Zhao, Sha, Shu, plus 3 girls in companions which was Gu Dasao, Sun Erniang, Hu Sanniang are 108 heroes in the novel. ip_6.dantiao|06. Duel System ip_6.dantiao_text|If the strongest troop in enemy party are stronger than your party, they will call for a duel in the beginning of the battle. If not, player can also call for a duel. When the hero win the duel, he will get “on fire”, increase str and agl by temp, and the morale of his party will get higher. If the hero lose, his soldier in his party will get chaos or surrender. ip_7.gaoang|07. On Fire ip_7.gaoang_text|When a hero win the duel, or kill enough enemies, or was encouraged by an actor, he will get an “on fire” status. On this status, he will get a temp increase of attribute, recover hp. His career skill will effect and will speak his own dialog. ip_8.zhanchang|08. Sign in the battle ip_8.zhanchang_text|Chaos green sign;^ Immobilize blue sign;^ Fall in love Flower sign; ^ Taoist skill Red aura. ^ The higher leadership skill the leader was, the longer the status last. ip_9.shenqi|09. Legendary Item ip_9.shenqi_text|There’s purple color text in Legendary Item, and hero will get buff when equipped it.^ Player can get legendary item after battle by chance, or on duel to loot, or in some secret chest, or in the mission, or by some NPC.^ The stronger enemy is, the more chance you will get the unique loot. In addition, looting skill of main party also effect the chance.^ If player has not get unique loot for a long time, the chance will grow up slowly. ip_10.chenghao|10. Title system ip_10.chenghao_text|If you insist on doing something, you will get the corresponding title. These titles will help you do this better. ^ Players can view the title in the report menu, or quest pages. ip_11.huweidui|11. Guard party "ip_11.huweidui_text|If vassal has town or castle, he will recruit guard parties. Player can get guard party from mayor if joined a faction. Guard parties will demobilize the prisoners for money, and get new troops. The higher official player has, the more soldier the guard party can take. " ip_12.teshubingzhong|12. Special unit ip_12.teshubingzhong_text|Every contry has their own special unit. Player can not capture them by battle. Just talk to mayor of your faction, he will tell you what you need to train. ip_13.guanzhi|13. Official system ip_13.guanzhi_text|Players can gain merits when they join the country, and enough contribution can increase their official positions. ^Improve the official position to obtain attributes, increase the upper limit of the troops, issue squats, obtain special equipment for the country, and so on. ^ Players can be divided into official positions after independence, and different official positions have different effects. ip_14.waijiao|14. Diplomatic system ip_14.waijiao_text|When the player joins other faction, he can advise the king's diplomacy. ^ After the player independence, he can find an official or prime minister to carry out a series of diplomatic functions. ^After the player independence, he can deliver military orders to the subordinates in the camp menu. ip_15.qita|15. Other system ip_15.qita_text|There are so many functions and systems are from 108 Heroes in classic M B, so I don’t introduce them in the Warband M B info pages. You can just play and find it. If you have any questions, leave the message in NexusMODs/moddb/steam. Have Fun! ip_16.kuaijiejian|16. Hot keys ip_16.kuaijiejian_text|[M] on the battle Open/close the mini map;^[T] on the battle Show the morale and killing rank;^[H] on the battle career skill (Artisan/ Herder/Doctor);^[Y] on the map speed on (if Dai Zong is in your party);^[U] on the map hiding (if Shi Qian is in your party);^^If your own faction has enough vassals in Shu, when you on the battle [U] to start formation, [J] formation forward, [N] cancel the formation ip_17.shenqichengzhang|17. Suffix of legendary weapons ip_17.shenqichengzhang_text|Every legendary weapon has random suffix, which was Metal, Wood, Water, Fire, Earth. Every legendary weapon can get EXP by killing. The weapon has random max level, the most max level is 4, which needs 700 exp.^The first feature of legendary weapon is decide by the suffix, it should get 25 exp to unlock it. There also are two kinds of legendary weapon, one is only suitable for Taoist career, and another is not.^The 2-4 feature is random, which need 100/300/700 to unlock. And the value is depend on the color of the feature, which was green-blue-gold-orange.^^Warning Due to M B engine restrictions, you’d better DO NOT equip a same kind of item in one troop. For example, if player equip “Moon sword[Metal]” and “Moon sword[Wood]” at the same time, the “Moon sword[Wood]” won’t get any exp, and the skill of the feature won’t effect. ip_18.jingjichang|18. Tournament ip_18.jingjichang_text|Player can get special reward by join tourament for few times. ip_19.haohanchenghao|19. Titles of Heroes ip_19.haohanchenghao_text|In addition to the players, the hero can also get the corresponding title through different ways. After winning the title, there will be certain effects and random attributes and skill rewards. ^The hero can gain military strength by killing the enemy, and the value of the military power can be increased to obtain a random attribute reward. Military strength values can be viewed after the war and in the quest pages. ip_20.junzhixitong|20.Military system ip_20.junzhixitong_text|You can find Military Appointment menu in the camp or before battle.^[Commander] Player controlled character. When you learned mind reading and it’s not on CD, you can click the button to change commander before battle. The Leadership Level of player can increase whole party’s attribute, which have 10% effect. If there’s no leader in one class, the effect is 25%.^[Advisor] Party can use advisor skill on the battle. This function is unavailable in this version.^[Leader] Increase ATK/DEF of the class, take 50% effect.^[Attacker] Increase ATK of the class, take 20% effect.^[Defender] Increase DEF of the class, take 20% effect.^Besides, the relation of Leader/attacker/defender can also buff the class, take 20% effect. If they have same native, they will get more relation addition after battle. You can move your mouse to the number to check the percent. ^Leadership Level There are 5 level of leadership D, C, B, A, S. Each level also contain 3 level, which like C-, C, C+. There are two way when hero reach to A, power up ATK or DEF, like A+[A], or A-[D]. There are three way when hero reach to S, increase or decrease damage from cavalry /infantry /archers. Like S-[A]CAV, means leadership is S-, more ATK, and take extra damage to cavalry.^Heroes will get more leadership EXP if the soldier in his class kill more troops. The higher level troop is, the more EXP heroes will get. You can click the “Leadership Level” text to switch it to “Leadership EXP”. When the heroes in your party can level up to A or S, you should level it up manual and choose the direction. ip_21.bingzhongshixing|21. Leadership Level ip_21.bingzhongshixing_text|- Leadership level is effect not only player’s main party, but also every party. ^- If the troop equipped ranged weapons, he is the archers class. Other troops who have horses, are cavalry class, The rest are the infantry class.^- Every special unit has extra buff, such as Xu Ning Gold Lancers, which will inflict extra damage to cavalry.^- The default name of team “infantry/cavalry/archers” is just a name, not class. If you put a horseman in this team, he will get cavalry buff from leader/attacker/defender, not infantry buff.^- Troops in center or guard party will also get buff from his lord or leader.^- Heroes will also get the buff.^- Heroes only get 1/2 leadership EXP than soldiers by killing.^- The higher leadership skill the hero is, the more quickly leadership exp he get. ip_22.zhanqianbuzhen|22. Battle settings ip_22.zhanqianbuzhen_text|You can find Battle Setting menu in the camp or before battle. Make sure you set the leader of the team first.^ [Team Setting] Change the team order. ^[Formation Order] Click the team name to change the position, click the apply check to enable the form. ^[Grounp Leaders] Click the leader name on the right to switch the team. ip_23.duxinshuqianghua|23. Mind Reading power up ip_23.duxinshuqianghua_text|When you have been defeated on the battle, it will not come to an end. You can continue watching or quit.^ Press [Tab] key to quit the battle; Press [Space] key to change watching mode;^ Click [mouse left/right] button to switch heroes;^ Press [WASD] key to rotate camera; Press [Direction] key to move camera;^ Press [Enter] key to choose hero; Press [Left Ctrl] key to close the tip message.^Tips you can only control hero after you learned the mind reading, and you can only control the heroes in your party. ip_24.shenqiqianghua|24. Refine stones ip_24.shenqiqianghua_text|Refine stones unlock the higher exp level, the max level is 4, which is 700 exp.^Power up stones upgrade your legendary weapons' first feature by using power up stone, you should get at least 25 exp to unlock the feature. you can not upgrade the feature which was already orange color.^Reroll stones reroll your legendary weapon’s 2-4 random feature by using reroll stone, you should upgrade it to max level first, after my work finished, it will lose a few exp. Please put the weapon into first 3 inventory slots.^Owner stones set your legendary weapon’s owner by using owner stone, you should upgrade it to max level first. One kind of weapon can only set owner by 3 heroes at most, and one hero can only set 2 owner special item at most. Please put the weapon into first 3 inventory slots.^Besides Tang Long, Hou Jian and Huangfu Duan can also set armor or horses’ owner.^You can check your stones in collection page. ip_25.quanguowudaodahui|25. Tournament of China ip_25.quanguowudaodahui_text|You can join Tournament of China every month, it’s a 5v5 game, and if you win 3 of 5, you win.^- You can join the game if you joined a faction, or your party has more than 4 companions, or your own kingdom has more than 4 vassals.^- There are 3 fights Quarterfinals, Semifinals, and Finals. ^- The rule is as same as duel on the battle, ammo is only 10, star skill and Taoist skill will enable. Time limit is 90s, when time’s up, the hero who has more percent hp will win.^- Player can control hero by mind reading.^- If you win the finals, you will get lots of reward, and have chance to get extra reward from host.^- You can pay for a spy to watch opponent setting.^- You can also play the mode in main menu “Super Smash Mod” ip_26.zhiyexitong2|26. Extra career ip_26.zhiyexitong2_text|Player can get one of first 9 career in the beginning, and then can learn the second from Han Bolong in Dong Jing tavern.^- You should learned Mind Reading before you talk to Han Bolong.^- You can learned extra career if your career have been level 3, and there’s a hero who has level 4 career in your party. It will spend a whole day to learn it.
https://w.atwiki.jp/ageofconan/pages/26.html
Conqueror FAQ/Feats/Builds**** UPDATE** guys i m almost level 80 and then i ll be testing all our final tier talents. For now **BLESSED CONQUEST** 6 seconds of invulnerability on a 2 minute cool down. using it while stunned, jumping or cc d triggers the cooldown with no effect. UPDATED** Formations -- New info on Hulk and Heroic call under brute feats Also REAPING BLADE INFO updated some leveling tips with feats and skills** ok guys i know theres alot of the same things being passed around on this forum and i figure we can reduce the clutter by concentrating it into this thread. keeping it bumped our stickied would be a great help, and feel free to post anything you would like me to add. Sorry for anything i left out or spelling errors, i m writing this as we group XP in thunder river. Charge Tips** There is only 1 rank of charge, and yes as i m sure you all noticed it has many fun bugs, and by fun i mean shoot me now. Some tips to not have this happen to you when charging do not use any abilities until after you have swung your weapon. charge only closes the distance, it has no root or stun component but it can be used in combat. also if you are sure the target wont move, queuing up burst of aggression, cunning deflection or crushing onslaught is a good idea. Armor** at lvl 10 you get medium and at lvl 30 you upgrade to heavy armor Conqueror Abilities FAQ** Furious Inspiration what the heck is that? Furious inspiration is a group proc, basically when you are in a party and someone is attacked there is a chance Furious inspiration will become active. This Buff you get stacks up to 10 times and can be refreshed and stay at this mark for as long as someone takes damage, duration is 15 seconds. What does Furious Inspiration do? Each stack adds a 2% damage increase, at 4 stacks you proc a 20 point group heal, and at 10 stacks group in combat instant rez. Once the stack is at ten, each additional application seems to heal the party for 20 again, and everytime you attack you can proc the group ressurection. Aura s** Conquerors are allowed 1 defensive and 1 offensive aura up at a time, they last for 4 hours or unless killed in PvE. Most aura s when you first get them aren t exactly the greatest buffs ever, but as you level they increase in rank and of course there are ones preferred over others OFFENSIVE Incite the Ranks Adds DPS to the groups weapons, it does not add to your top end by the listed amount, it adds to your DPS, at rank 2 it can add 10 top end to your weapon. (from personal experience i have never used this buff over Fire weave, it might be used if flame weave doesn t stack with HoX damage proc) FireWeave Adds a Fire damage Proc to your weapon, when it hits it increases fire damage taken by the listed amount, this buff is affected by frenzy stance. (a very good skill, and becomes amazing with feats) Hoarfrost Adds a Cold damage proc to your weapon, when it procs it also decreases the targets DPS for a short time. (Obtained at 50, i ve only tested it a few times but on average the damage was around 10-11 couldn t find the listed amount of DPS is decreased) DEFENSIVE Inspire the rank obtained at level 45, our group stam regen, ticks every 3 seconds. rank 1 is 42 and currently rank 2 is 60 stam every 3 seconds. (stacks with warlord) Marshal the ranks Group -% miss chance and increases with each rank. -4% miss chance at rank 4 Shield of retribution Reflects damage, rank 3 reflects 11 damage.. Vitalize the ranks Obtained at level 60, restores 64 mana every 3 seconds at rank 1. Orders and Commands** Orders you get at 10 or 15 (need someone to confirm) you get 3 of them Note on Scaling** WHen i mention does not scale, it means as you level this ability never increases, ie be it lvl 15 or lvl 80 Battle Orders will always be a 2% damage multiplier. Battle Orders 2% damage increase last 20 seconds, so far does not scale with level Resolute Orders Each swing restores 10 health and 4 stamina, doesn t scale Skirmish Orders 2% threat reduction doesn t scale Commands these work on the conqueror Steadfast Command restores 9 stam every 2 seconds for 30 seconds to everyone behind you, seems to give 1 extra stamina each level. Barrage Command adds ranged and spells damage to everyone behind you, 53 spelldamage and 12 ranged damage at level 60, scales with level. Cover Command Ranged and magical attacks have a chance to heal everyone behind you when attacked. Heals for about 30 and scales with level. Formations** Formation of steel Everyone in front of the conqueror gains a damage absorption, First rank at lvl 60 is 10 damage absorbed seems to scale 1 point a level. Formation of Resolve Everyone in front of the conqueror will gain a small amount of health and stam when attacked. Looks like it heals 15-20 stam and health a hit, scales about a 1 point with each level past 60. Formation of retribution Everyone in front of the conqueror has a chance to deal retribution damage on their attack. Damage dealt was 10 at lvl 60, adds 1 point per level after it so far. FEATS** I m going to add common builds and general Feat questions to this section, not what every single feat does but if theres one you want i will add it. Going to keep it small for now Carnage Warlord group stam and mana regen every 6 seconds, scales with level. Blade Weave for every FI stack on you, you will gain 7% offhand chance when used. so fully stacked(10 stacks) it gives 70% chance to hit with offhand and consumes the FI buff blade weave will show up as a debuff by your stance so once it is used FI can instantly be reapplied. 30 second cooldown. Reaping Blade for 5 seconds you have a 100% chance to hit with your offhand, 45 second cooldown. Brute NOTE* after testing, both Lumbering Hulk (improved) and Heroic call (improved) Scale with level making them very nice abilities. Throat Slash(DW/2H) 2 second cast time, duration 1 second to everyone infront of you. Burst of aggression (DW/2H) next attack will knock down the opponent, 1 minute cooldown (no cooldown if you don t use it) Crushing onslaugh(DW/2H) next attack will snare the target by 95% for 6 seconds, 1 minutecooldown (no cooldown if you don t use it) Angel Of Fury might be bugged, group or not i cannot seem to proc any FI myself. Soldier Volcanic Rage 20% damange increase for 30 second on a 2 minute cooldown. Common Builds*** (note i currently avoid most bottom tier abilities because they re either not that great or have a really long reuse time where something just as useful can be gotten instead) Group 2h PVP http //hybes.de/featPlaner.php?class...011-23,4013-21 you can sub out hulk if you want, it s optional Solo 2h PVP http //hybes.de/featPlaner.php?class...011-23,4013-21 DW Group PVP http //hybes.de/featPlaner.php?class...011-23,4013-21 or http //hybes.de/featPlaner.php?class...000-25,4010-25 DW PVE DPS http //hybes.de/featPlaner.php?class...010-25,4012-23 Leveling Tips*** For leveling i d recommend spending points in the soldier tree, being able to kill in frenzy stance and using cunning deflection is a great help. As for Brute and Carnage either are good to level up, on a pvp server Brute would help alot with the snare and knock down i know some people want to get those before going soldier. Skills For leveling solo or group i d recommend bandaging with fast healing and recovery with fast recovery. They both take effect during rest and if kept at least 1/2 of the max amount of skill they can restore 20-25% of your health and stam bar per tick. Also putting points into climb when necessary isn t a bad idea either. at 80 i would max endurance, hide, climb. ALso as a tank maxing taunt is very helpful. Some tips for skills hold Ctrl and clicking the + will add all available points into that skill. holding alt and clicking + will respec that skill line, cost 1c, 1s or 50s which is a bug i think